51 lines
1.4 KiB
JavaScript
51 lines
1.4 KiB
JavaScript
var createError = require('http-errors');
|
||
var express = require('express');
|
||
var path = require('path');
|
||
var cookieParser = require('cookie-parser');
|
||
var logger = require('morgan');
|
||
|
||
var cheer = require('cheerio');
|
||
var config = require('./config/index');
|
||
var axios = require('axios');
|
||
|
||
// 因为对方网站的域名经常变,导致爬虫无法爬数据,所以这里会在每次后端接口
|
||
// 刚启动的时候,自动从目标网站的 防失联 页面 抓取最新的
|
||
// 网站域名,然后保存到全局config中。
|
||
axios.get(config.pushUrl)
|
||
.then(function (response) {
|
||
var $ = cheer.load(response.data)
|
||
config.BaseUrl = `${$(".title + p>a").text()}/`
|
||
// console.log("抓取到的网站最新域名为:", config.BaseUrl);
|
||
})
|
||
|
||
var indexRouter = require('./routes/index');
|
||
var agentRouter = require('./routes/agent');
|
||
var app = express();
|
||
|
||
app.use(logger('dev'));
|
||
app.use(express.json());
|
||
app.use(express.urlencoded({ extended: false }));
|
||
app.use(cookieParser());
|
||
|
||
|
||
|
||
app.use('/api/json/', indexRouter);
|
||
app.use('/api/json/', agentRouter);
|
||
|
||
// catch 404 and forward to error handler
|
||
app.use(function(req, res, next) {
|
||
next(createError(404));
|
||
});
|
||
|
||
// error handler
|
||
app.use(function(err, req, res, next) {
|
||
// set locals, only providing error in development
|
||
res.locals.message = err.message;
|
||
res.locals.error = req.app.get('env') === 'development' ? err : {};
|
||
|
||
// render the error page
|
||
res.status(err.status || 500);
|
||
});
|
||
|
||
module.exports = app;
|