From a47a0e17aee8c78bd6dde165e959df476e092b00 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E5=AD=9F=E6=94=BF=E5=85=83?= <278227739@qq.com> Date: Thu, 4 Jan 2018 00:53:54 +0800 Subject: [PATCH] use proxy from query.proxy --- app.js | 8 ++++++++ util/util.js | 8 +++++++- 2 files changed, 15 insertions(+), 1 deletion(-) diff --git a/app.js b/app.js index cd50609..4698d78 100644 --- a/app.js +++ b/app.js @@ -23,6 +23,14 @@ app.use(cache("2 minutes", onlyStatus200)); app.use(express.static(path.resolve(__dirname, "public"))); +app.use(function(req, res, next) { + const proxy = req.query.proxy; + if (proxy) { + req.headers.cookie = req.headers.cookie + `__proxy__${proxy}`; + } + next(); +}); + // 获取专辑内容 app.use("/album", require("./router/album")); diff --git a/util/util.js b/util/util.js index 1ac5b80..80fc7bb 100644 --- a/util/util.js +++ b/util/util.js @@ -2,6 +2,8 @@ const Encrypt = require("./crypto.js"); const request = require("request"); const querystring = require("querystring"); +request.debug = true; + function randomUserAgent() { const userAgentList = [ "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_12_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/59.0.3071.115 Safari/537.36", @@ -37,6 +39,9 @@ function createWebAPIRequest( callback, errorcallback ) { + console.log(cookie); + const proxy = cookie.split("__proxy__")[1]; + cookie = cookie.split("__proxy__")[0]; const cryptoreq = Encrypt(data); const options = { url: `http://${host}${path}`, @@ -54,7 +59,8 @@ function createWebAPIRequest( body: querystring.stringify({ params: cryptoreq.params, encSecKey: cryptoreq.encSecKey - }) + }), + proxy: proxy }; request(options, function(error, res, body) {