first commit
This commit is contained in:
33
src/services/storageService.js
Normal file
33
src/services/storageService.js
Normal file
@ -0,0 +1,33 @@
|
||||
const axios = require('axios');
|
||||
const config = require('../config');
|
||||
const { Logger } = require('../utils/logger');
|
||||
|
||||
class StorageService {
|
||||
constructor() {
|
||||
this.api = axios.create({
|
||||
baseURL: config.api.baseUrl,
|
||||
timeout: config.global.requestTimeout,
|
||||
headers: {
|
||||
'Content-Type': 'application/json'
|
||||
}
|
||||
});
|
||||
this.logger = new Logger('Storage');
|
||||
}
|
||||
|
||||
async batchSave(newsItems) {
|
||||
try {
|
||||
const response = await this.api.post(config.api.endpoints.batchSave, {
|
||||
items: newsItems,
|
||||
source: 'multi-site-crawler'
|
||||
});
|
||||
|
||||
this.logger.info(`批量保存成功: ${newsItems.length} 条`);
|
||||
return response.data;
|
||||
} catch (error) {
|
||||
this.logger.error('批量保存失败', error.response?.data || error.message);
|
||||
throw error;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
module.exports = new StorageService();
|
Reference in New Issue
Block a user