|
@@ -0,0 +1,68 @@
|
|
|
+// call the packages we need
|
|
|
+var express = require('express'); // call express
|
|
|
+var app = express(); // define our app using express
|
|
|
+var bodyParser = require('body-parser');
|
|
|
+var request = require("request");
|
|
|
+const edurouter = require('./query');
|
|
|
+const morgan = require('morgan');
|
|
|
+var path = require("path");
|
|
|
+var port = "5005"; // set our port
|
|
|
+//const cors = require('cors')
|
|
|
+app.use(morgan('dev'));
|
|
|
+// configure app to use bodyParser()
|
|
|
+// this will let us get the data from a POST
|
|
|
+app.use(bodyParser.urlencoded({ extended: true, limit: '3mb' }));
|
|
|
+app.use(bodyParser.json({ limit: '3mb' }));
|
|
|
+
|
|
|
+//暂时全跨域
|
|
|
+app.use(function (req, res, next) {
|
|
|
+ ///var allowedOrigins = [config.local.origin,'http://cocorobo.hk','http://www.cocorobo.hk','https://cocorobo.hk','http://cloud.cocorobo.hk','https://cloud.cocorobo.hk'];
|
|
|
+ var origin = req.headers.origin || "*";
|
|
|
+ //if(allowedOrigins.indexOf(origin) > -1){
|
|
|
+ res.setHeader('Access-Control-Allow-Origin', origin);
|
|
|
+ //}
|
|
|
+ res.header("Access-Control-Allow-Methods", "PUT,POST,GET,DELETE,OPTIONS");
|
|
|
+ res.header("Access-Control-Allow-Headers", "Origin, X-Requested-With, Content-Type, Accept");
|
|
|
+ res.header('Access-Control-Allow-Credentials', true);
|
|
|
+ //修改程序信息与版本
|
|
|
+ res.header('X-Powered-By', ' 3.2.1')
|
|
|
+ //内容类型:如果是post请求必须指定这个属性
|
|
|
+ res.header('Content-Type', 'application/json;charset=utf-8')
|
|
|
+ next();
|
|
|
+});
|
|
|
+
|
|
|
+/*
|
|
|
+app.use(cors({
|
|
|
+ origin:[`http:${config.local.origin}`,'http://www.cocorobo.hk','https://cocorobo.hk','http://cloud.cocorobo.hk','https://cloud.cocorobo.hk'],
|
|
|
+ methods:['GET','POST','PUT','DELETE'],
|
|
|
+ credentials: true // enable set cookie
|
|
|
+}));
|
|
|
+*/
|
|
|
+// all of our routes will be prefixed with /api
|
|
|
+app.use('/query', edurouter);
|
|
|
+// app.use('/game', game);
|
|
|
+
|
|
|
+app.all('/download', function (req, res, next) {
|
|
|
+ //req.body.url = "https://ccrb.s3.cn-northwest-1.amazonaws.com.cn/%E4%B8%8B%E8%BD%BD%20%284%29.doc";
|
|
|
+ request({
|
|
|
+ url: req.body.url,
|
|
|
+ method: "GET",
|
|
|
+ encoding: null,
|
|
|
+ headers: {
|
|
|
+ 'Accept-Encoding': 'gzip, deflate'
|
|
|
+ }
|
|
|
+ },
|
|
|
+ function (error, response, body) {
|
|
|
+ if (!error && response.statusCode == 200) {
|
|
|
+ res.setHeader('Content-Type', 'application/force-download');
|
|
|
+ res.setHeader('Content-Disposition', 'attachment; filename=' + path.basename(req.body.url));
|
|
|
+ res.setHeader('Content-Length', body.length);
|
|
|
+ res.send(body);
|
|
|
+ }
|
|
|
+ });
|
|
|
+});
|
|
|
+
|
|
|
+// START THE SERVER
|
|
|
+// =============================================================================
|
|
|
+app.listen(port);
|
|
|
+console.log('app happens on port ' + port);
|