From c835c836d4d9f0f8aa40370dbb50e20d44cd6d73 Mon Sep 17 00:00:00 2001 From: moosoul Date: Sun, 24 Mar 2019 14:44:36 +0800 Subject: [PATCH 1/2] =?UTF-8?q?=E5=A2=9E=E5=8A=A0=E6=8E=88=E6=9D=83?= =?UTF-8?q?=E5=9B=9E=E8=B0=83oauth2Callback=E5=AF=B9HTTPS=E7=9A=84?= =?UTF-8?q?=E6=94=AF=E6=8C=81?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- controller/oauth2Controller.js | 34 +++++++++++++++++++++++++++++++++- 1 file changed, 33 insertions(+), 1 deletion(-) diff --git a/controller/oauth2Controller.js b/controller/oauth2Controller.js index 67aa0d0..355e581 100644 --- a/controller/oauth2Controller.js +++ b/controller/oauth2Controller.js @@ -1,6 +1,7 @@ const baseController = require('controllers/base.js'); const yapi = require('yapi.js'); const http = require('http') +const https = require('https') class oauth2Controller { constructor(ctx){ @@ -31,6 +32,7 @@ class oauth2Controller { let jsonRes = JSON.parse(res); ctx.redirect('/api/user/login_by_token?token=' + jsonRes.access_token); }).catch(function(rej) { + console.log(rej) return { status_code: rej.statuscode, message: rej.statusMessage @@ -52,11 +54,41 @@ class oauth2Controller { } requestInfo(ops, path, method) { + if (ops.host.indexOf('https://') !== -1) { + return new Promise((resolve, reject) => { + let req = ''; + let http_client = https.request({ + host: ops.host.replace('https://', ''), + path: path, + method: method + }, function(res) { + res.on('error', function(err) { + reject(err); + }); + res.setEncoding('utf8'); + if (res.statusCode != 200) { + reject({statuscode: res.statusCode, statusMessage: res.statusMessage}); + } else { + res.on('data', function(chunk) { + req += chunk; + }); + res.on('end', function() { + resolve(req); + }); + } + }); + http_client.on('error', () => { + reject({message: 'request error'}); + }); + http_client.end(); + }); + } + return new Promise((resolve, reject) => { let req = ''; let http_client = http.request(ops.host + path, { - method: method + method: method, }, function(res) { res.on('error', function(err) { From 35b51b5efeeb1aea7f1d4edef2c49da1c2f3295f Mon Sep 17 00:00:00 2001 From: moosoul Date: Mon, 25 Mar 2019 10:52:27 +0800 Subject: [PATCH 2/2] fix lint to Codacy --- controller/oauth2Controller.js | 43 +++++++++++++++++----------------- 1 file changed, 21 insertions(+), 22 deletions(-) diff --git a/controller/oauth2Controller.js b/controller/oauth2Controller.js index 355e581..195d0e2 100644 --- a/controller/oauth2Controller.js +++ b/controller/oauth2Controller.js @@ -1,7 +1,7 @@ const baseController = require('controllers/base.js'); const yapi = require('yapi.js'); const http = require('http') -const https = require('https') +const https = require("https") class oauth2Controller { constructor(ctx){ @@ -32,7 +32,6 @@ class oauth2Controller { let jsonRes = JSON.parse(res); ctx.redirect('/api/user/login_by_token?token=' + jsonRes.access_token); }).catch(function(rej) { - console.log(rej) return { status_code: rej.statuscode, message: rej.statusMessage @@ -54,63 +53,63 @@ class oauth2Controller { } requestInfo(ops, path, method) { - if (ops.host.indexOf('https://') !== -1) { + if (ops.host.indexOf("https://") !== -1) { return new Promise((resolve, reject) => { let req = ''; - let http_client = https.request({ - host: ops.host.replace('https://', ''), + let httpsClient = https.request({ + host: ops.host.replace("https://", ""), path: path, method: method }, function(res) { - res.on('error', function(err) { + res.on("error", function(err) { reject(err); }); - res.setEncoding('utf8'); + res.setEncoding("utf8"); if (res.statusCode != 200) { reject({statuscode: res.statusCode, statusMessage: res.statusMessage}); } else { - res.on('data', function(chunk) { + res.on("data", function(chunk) { req += chunk; }); - res.on('end', function() { + res.on("end", function() { resolve(req); }); } }); - http_client.on('error', () => { - reject({message: 'request error'}); + httpsClient.on("error", () => { + reject({message: "request error"}); }); - http_client.end(); + httpsClient.end(); }); } return new Promise((resolve, reject) => { - let req = ''; - let http_client = http.request(ops.host + path, + let req = ""; + let httpClient = http.request(ops.host + path, { - method: method, + method, }, function(res) { - res.on('error', function(err) { + res.on("error", function(err) { reject(err); }); - res.setEncoding('utf8'); + res.setEncoding("utf8"); if (res.statusCode != 200) { reject({statuscode: res.statusCode, statusMessage: res.statusMessage}); } else { - res.on('data', function(chunk) { + res.on("data", function(chunk) { req += chunk; }); - res.on('end', function() { + res.on("end", function() { resolve(req); }); } } ); - http_client.on('error', (e) => { - reject({message: 'request error'}); + httpClient.on("error", (e) => { + reject({message: "request error"}); }); - http_client.end(); + httpClient.end(); }); } }