From 2e91c32c3b3c8c5626f1526d06e193dd84273795 Mon Sep 17 00:00:00 2001 From: helloyou2012 Date: Thu, 19 Mar 2020 17:09:30 +0800 Subject: [PATCH 1/4] change urllib to axios --- package.json | 16 ++++---- qiniu/cdn.js | 9 +---- qiniu/rpc.js | 63 ++++++++++++++++++-------------- qiniu/sms/message.js | 12 ++---- qiniu/storage/form.js | 17 +++++---- qiniu/zone.js | 6 +-- test/rs.test.js | 85 ++++++++++++++++++++++--------------------- 7 files changed, 103 insertions(+), 105 deletions(-) diff --git a/package.json b/package.json index 15b627f2..8c750d59 100644 --- a/package.json +++ b/package.json @@ -49,26 +49,24 @@ "node >= 6" ], "dependencies": { - "agentkeepalive": "^4.0.2", + "axios": "^0.19.2", "block-stream2": "^2.0.0", "crc32": "^0.2.2", "destroy": "^1.0.4", "encodeurl": "^1.0.1", - "formstream": "^1.1.0", - "mime": "^2.4.4", - "tunnel-agent": "^0.6.0", - "urllib": "^2.34.1" + "form-data": "^3.0.0", + "mime": "^2.4.4" }, "devDependencies": { - "@types/node": "^8.0.3", + "@types/node": "^13.9.2", "eslint": "^6.5.1", "eslint-config-standard": "^14.1.0", "eslint-plugin-import": "^2.11.0", - "eslint-plugin-node": "^10.0.0", + "eslint-plugin-node": "^11.0.0", "eslint-plugin-promise": "^4.2.1", "eslint-plugin-standard": "^4.0.1", - "mocha": "^6.2.1", - "nyc": "^14.1.1", + "mocha": "^7.1.1", + "nyc": "^15.0.0", "should": "^13.2.3" }, "license": "MIT" diff --git a/qiniu/cdn.js b/qiniu/cdn.js index 75a4ce9b..1d384169 100644 --- a/qiniu/cdn.js +++ b/qiniu/cdn.js @@ -1,6 +1,6 @@ const url = require('url'); const crypto = require('crypto'); -const urllib = require('urllib'); +const rpc = require('./rpc'); const util = require('./util'); const digest = require('./auth/digest.js'); const encodeUrl = require('encodeurl'); @@ -107,12 +107,7 @@ function req (mac, reqPath, reqBody, callbackFunc) { 'Content-Type': 'application/json', Authorization: accessToken }; - urllib.request(url, { - method: 'POST', - headers: headers, - data: reqBody, - dataType: 'json' - }, callbackFunc); + rpc.post(url, reqBody, headers, callbackFunc); } // 构建标准的基于时间戳的防盗链 diff --git a/qiniu/rpc.js b/qiniu/rpc.js index 8c52d58e..29d68db3 100644 --- a/qiniu/rpc.js +++ b/qiniu/rpc.js @@ -1,13 +1,14 @@ -var urllib = require('urllib'); -var conf = require('./conf'); +const axios = require('axios'); +const conf = require('./conf'); +exports.get = get; exports.post = post; exports.postMultipart = postMultipart; exports.postWithForm = postWithForm; exports.postWithoutForm = postWithoutForm; function postMultipart (requestURI, requestForm, callbackFunc) { - return post(requestURI, requestForm, requestForm.headers(), callbackFunc); + return post(requestURI, requestForm, requestForm.getHeaders(), callbackFunc); } function postWithForm (requestURI, requestForm, token, callbackFunc) { @@ -30,50 +31,56 @@ function postWithoutForm (requestURI, token, callbackFunc) { return post(requestURI, null, headers, callbackFunc); } +function get (requestURI, callbackFunc) { + return axios.get(requestURI).then((res) => { + res.statusCode = res.status; + callbackFunc(null, res.data, res); + }).catch((err) => { + let respBody = null; + if (err.response) { + err.response.statusCode = err.response.status; + respBody = err.response.data; + } + callbackFunc(err, respBody, err.response); + }); +} + function post (requestURI, requestForm, headers, callbackFunc) { - // var start = parseInt(Date.now() / 1000); headers = headers || {}; headers['User-Agent'] = headers['User-Agent'] || conf.USER_AGENT; headers.Connection = 'keep-alive'; - var data = { + const data = { + url: requestURI, headers: headers, method: 'POST', - dataType: 'json', + responseType: 'json', timeout: conf.RPC_TIMEOUT, - gzip: true - // timing: true, + decompress: false }; if (conf.RPC_HTTP_AGENT) { - data.agent = conf.RPC_HTTP_AGENT; + data.httpAgent = conf.RPC_HTTP_AGENT; } if (conf.RPC_HTTPS_AGENT) { data.httpsAgent = conf.RPC_HTTPS_AGENT; } - if (Buffer.isBuffer(requestForm) || typeof requestForm === 'string') { - data.content = requestForm; - } else if (requestForm) { - data.stream = requestForm; + if (requestForm) { + data.data = requestForm; } else { data.headers['Content-Length'] = 0; } - - var req = urllib.request(requestURI, data, function (respErr, respBody, - respInfo) { - // var end = parseInt(Date.now() / 1000); - // console.log((end - start) + " seconds"); - // console.log("queuing:\t" + respInfo.timing.queuing); - // console.log("dnslookup:\t" + respInfo.timing.dnslookup); - // console.log("connected:\t" + respInfo.timing.connected); - // console.log("requestSent:\t" + respInfo.timing.requestSent); - // console.log("waiting:\t" + respInfo.timing.waiting); - // console.log("contentDownload:\t" + respInfo.timing.contentDownload); - - callbackFunc(respErr, respBody, respInfo); + return axios.request(data).then((res) => { + res.statusCode = res.status; + callbackFunc(null, res.data, res); + }).catch((err) => { + let respBody = null; + if (err.response) { + err.response.statusCode = err.response.status; + respBody = err.response.data; + } + callbackFunc(err, respBody, err.response); }); - - return req; } diff --git a/qiniu/sms/message.js b/qiniu/sms/message.js index fbcfc595..88b153f6 100644 --- a/qiniu/sms/message.js +++ b/qiniu/sms/message.js @@ -1,5 +1,6 @@ const util = require('../util'); -const urllib = require('urllib'); +const rpc = require('../rpc'); + exports.sendMessage = function (reqBody,mac,callbackFunc){ reqBody = JSON.stringify(reqBody); var args = { @@ -47,12 +48,5 @@ function post(args,callbackFunc){ 'Authorization': accessToken, 'Content-Type': contentType, } - - var data = { - method: 'POST', - headers: headers, - data: args.reqBody, - } - - urllib.request(args.requestURI, data, callbackFunc); + rpc.post(args.requestURI, args.reqBody, headers, callbackFunc); } diff --git a/qiniu/storage/form.js b/qiniu/storage/form.js index 91d0f3c9..7e82a4a6 100644 --- a/qiniu/storage/form.js +++ b/qiniu/storage/form.js @@ -6,7 +6,7 @@ const getCrc32 = require('crc32'); const path = require('path'); const mime = require('mime'); const Readable = require('stream').Readable; -const formstream = require('formstream'); +const FormData = require('form-data'); exports.FormUploader = FormUploader; exports.PutExtra = PutExtra; @@ -104,17 +104,20 @@ FormUploader.prototype.putWithoutKey = function (uploadToken, body, putExtra, }; function createMultipartForm (uploadToken, key, fsStream, putExtra, callbackFunc) { - var postForm = formstream(); - postForm.field('token', uploadToken); + var postForm = new FormData(); + postForm.append('token', uploadToken); if (key) { - postForm.field('key', key); + postForm.append('key', key); } - postForm.stream('file', fsStream, putExtra.fname, putExtra.mimeType); + postForm.append('file', fsStream, { + filename: putExtra.fname, + contentType: putExtra.mimeType + }); // putExtra params for (var k in putExtra.params) { if (k.startsWith('x:')) { - postForm.field(k, putExtra.params[k].toString()); + postForm.append(k, putExtra.params[k].toString()); } } var fileBody = []; @@ -125,7 +128,7 @@ function createMultipartForm (uploadToken, key, fsStream, putExtra, callbackFunc fsStream.on('end', function () { fileBody = Buffer.concat(fileBody); var bodyCrc32 = parseInt('0x' + getCrc32(fileBody)); - postForm.field('crc32', bodyCrc32); + postForm.append('crc32', bodyCrc32); }); callbackFunc(postForm); } diff --git a/qiniu/zone.js b/qiniu/zone.js index f56bc43a..68262992 100644 --- a/qiniu/zone.js +++ b/qiniu/zone.js @@ -1,5 +1,5 @@ -const urllib = require('urllib'); const util = require('util'); +const rpc = require('./rpc'); const conf = require('./conf'); // huadong @@ -62,7 +62,7 @@ exports.Zone_as0 = new conf.Zone([ exports.getZoneInfo = function (accessKey, bucket, callbackFunc) { var apiAddr = util.format('https://uc.qbox.me/v2/query?ak=%s&bucket=%s', accessKey, bucket); - urllib.request(apiAddr, function (respErr, respData, respInfo) { + rpc.get(apiAddr, function (respErr, respData, respInfo) { if (respErr) { callbackFunc(respErr, null, null); return; @@ -75,7 +75,7 @@ exports.getZoneInfo = function (accessKey, bucket, callbackFunc) { return; } - var zoneData = JSON.parse(respData); + var zoneData = respData || {}; var srcUpHosts = []; var cdnUpHosts = []; var zoneExpire = 0; diff --git a/test/rs.test.js b/test/rs.test.js index f2ae8a7b..14f55b65 100644 --- a/test/rs.test.js +++ b/test/rs.test.js @@ -2,7 +2,7 @@ const should = require('should'); const assert = require('assert'); const qiniu = require('../index.js'); const proc = require('process'); -const urllib = require('urllib'); +const axios = require('axios'); const console = require('console'); // eslint-disable-next-line no-undef @@ -47,11 +47,12 @@ describe('test start bucket manager', function () { it('test privateDownloadUrl', function (done) { var key = 'test_file'; var url = bucketManager.privateDownloadUrl('http://' + domain, key, 20); - urllib.request(url, function (err, respBody, respInfo) { - console.log(respBody.toString(), respInfo); - should.not.exist(err); - should.equal(respInfo.status, 200); + axios.get(url).then((res) => { + console.log(res.data.toString(), res); + should.equal(res.status, 200); done(); + }).catch((err) => { + done(err); }); }); }); @@ -248,7 +249,7 @@ describe('test start bucket manager', function () { respBody, respInfo) { should.not.exist(err); console.log(JSON.stringify(respBody) + '\n'); - console.log(JSON.stringify(respInfo)); + console.log(respInfo); respBody.should.containEql(srcBucket); done(); }); @@ -265,7 +266,7 @@ describe('test start bucket manager', function () { respBody, respInfo) { should.not.exist(err); console.log(JSON.stringify(respBody) + '\n'); - console.log(JSON.stringify(respInfo)); + console.log(respInfo); done(); }); }); @@ -280,7 +281,7 @@ describe('test start bucket manager', function () { }, function (err, respBody, respInfo) { should.not.exist(err); console.log(JSON.stringify(respBody) + '\n'); - console.log(JSON.stringify(respInfo)); + console.log(respInfo); respBody.should.have.keys('items'); respBody.items.forEach(function (item) { item.should.have.keys('key', 'hash'); @@ -301,7 +302,7 @@ describe('test start bucket manager', function () { // the irregular data return from Server that Cannot be converted by urllib to JSON Object // so err !=null and you can judge respBody==null or err.res.statusCode==200 console.log(respBody + '\n'); - console.log(JSON.stringify(respInfo)); + console.log(respInfo); done(); }); }); @@ -322,20 +323,7 @@ describe('test start bucket manager', function () { respBody, respInfo) { should.not.exist(err); console.log(JSON.stringify(respBody) + '\n'); - console.log(JSON.stringify(respInfo)); - done(); - }); - }); - }); - - // delete - describe('test deleteLifeRule', function () { - it('test deleteLifeRule', function (done) { - bucketManager.deleteBucketLifecycleRule(bucket, 'hello', function (err, - respBody, respInfo) { - should.not.exist(err); - console.log(JSON.stringify(respBody) + '\n'); - console.log(JSON.stringify(respInfo)); + console.log(respInfo); done(); }); }); @@ -354,7 +342,7 @@ describe('test start bucket manager', function () { respBody, respInfo) { should.not.exist(err); console.log(JSON.stringify(respBody) + '\n'); - console.log(JSON.stringify(respInfo)); + console.log(respInfo); done(); }); }); @@ -367,7 +355,20 @@ describe('test start bucket manager', function () { respBody, respInfo) { should.not.exist(err); console.log(JSON.stringify(respBody) + '\n'); - console.log(JSON.stringify(respInfo)); + console.log(respInfo); + done(); + }); + }); + }); + + // delete + describe('test deleteLifeRule', function () { + it('test deleteLifeRule', function (done) { + bucketManager.deleteBucketLifecycleRule(bucket, 'hello', function (err, + respBody, respInfo) { + should.not.exist(err); + console.log(JSON.stringify(respBody) + '\n'); + console.log(respInfo); done(); }); }); @@ -379,14 +380,14 @@ describe('test start bucket manager', function () { describe('test addEvents', function () { it('test addEvents', function (done) { var options = { - name: 'event_testt', + name: 'event_test', event: 'mkfile', callbackURL: 'http://node.ijemy.com/qncback' }; bucketManager.putBucketEvent(bucket, options, function (err, respBody, respInfo) { should.not.exist(err); console.log(JSON.stringify(respBody) + '\n'); - console.log(JSON.stringify(respInfo)); + console.log(respInfo); done(); }); }); @@ -395,14 +396,14 @@ describe('test start bucket manager', function () { describe('test updateEvents', function () { it('test updateEvents', function (done) { var options = { - name: 'event_testt', + name: 'event_test', event: 'copy', callbackURL: 'http://node.ijemy.com/qncback' }; bucketManager.updateBucketEvent(bucket, options, function (err, respBody, respInfo) { should.not.exist(err); console.log(JSON.stringify(respBody) + '\n'); - console.log(JSON.stringify(respInfo)); + console.log(respInfo); done(); }); }); @@ -413,7 +414,7 @@ describe('test start bucket manager', function () { bucketManager.getBucketEvent(bucket, function (err, respBody, respInfo) { should.not.exist(err); console.log(JSON.stringify(respBody) + '\n'); - console.log(JSON.stringify(respInfo)); + console.log(respInfo); done(); }); }); @@ -424,7 +425,7 @@ describe('test start bucket manager', function () { bucketManager.deleteBucketEvent(bucket, 'event_test', function (err, respBody, respInfo) { should.not.exist(err); console.log(JSON.stringify(respBody) + '\n'); - console.log(JSON.stringify(respInfo)); + console.log(respInfo); done(); }); }); @@ -443,7 +444,7 @@ describe('test start bucket manager', function () { bucketManager.putReferAntiLeech(bucket, options, function (err, respBody, respInfo) { should.not.exist(err); console.log(JSON.stringify(respBody) + '\n'); - console.log(JSON.stringify(respInfo)); + console.log(respInfo); done(); }); }); @@ -472,7 +473,7 @@ describe('test start bucket manager', function () { bucketManager.putCorsRules(bucket, body, function (err, respBody, respInfo) { should.not.exist(err); console.log(JSON.stringify(respBody) + '\n'); - console.log(JSON.stringify(respInfo)); + console.log(respInfo); done(); }); }); @@ -483,7 +484,7 @@ describe('test start bucket manager', function () { bucketManager.getCorsRules(bucket, function (err, respBody, respInfo) { should.not.exist(err); console.log(JSON.stringify(respBody) + '\n'); - console.log(JSON.stringify(respInfo)); + console.log(respInfo); done(); }); }); @@ -500,7 +501,7 @@ describe('test start bucket manager', function () { // bucketManager.getBucketSourceConfig(body, function(err, respBody, respInfo) { // should.not.exist(err); // console.log(JSON.stringify(respBody) + "\n"); - // console.log(JSON.stringify(respInfo)); + // console.log(respInfo); // done(); // }); // }); @@ -514,7 +515,7 @@ describe('test start bucket manager', function () { bucketManager.putBucketAccessStyleMode(bucket, mode, function (err, respBody, respInfo) { should.not.exist(err); console.log(JSON.stringify(respBody) + '\n'); - console.log(JSON.stringify(respInfo)); + console.log(respInfo); done(); }); }); @@ -529,7 +530,7 @@ describe('test start bucket manager', function () { bucketManager.putBucketMaxAge(bucket, options, function (err, respBody, respInfo) { should.not.exist(err); console.log(JSON.stringify(respBody) + '\n'); - console.log(JSON.stringify(respInfo)); + console.log(respInfo); done(); }); }); @@ -544,7 +545,7 @@ describe('test start bucket manager', function () { bucketManager.putBucketAccessMode(bucket, options, function (err, respBody, respInfo) { should.not.exist(err); console.log(JSON.stringify(respBody) + '\n'); - console.log(JSON.stringify(respInfo)); + console.log(respInfo); done(); }); }); @@ -561,7 +562,7 @@ describe('test start bucket manager', function () { bucketManager.putBucketQuota(bucket, options, function (err, respBody, respInfo) { should.not.exist(err); console.log(JSON.stringify(respBody) + '\n'); - console.log(JSON.stringify(respInfo)); + console.log(respInfo); done(); }); }); @@ -573,7 +574,7 @@ describe('test start bucket manager', function () { bucketManager.putBucketQuota(bucket, options, function (err, respBody, respInfo) { should.not.exist(err); console.log(JSON.stringify(respBody) + '\n'); - console.log(JSON.stringify(respInfo)); + console.log(respInfo); done(); }); }); @@ -583,7 +584,7 @@ describe('test start bucket manager', function () { bucketManager.getBucketQuota(bucket, function (err, respBody, respInfo) { should.not.exist(err); console.log(JSON.stringify(respBody) + '\n'); - console.log(JSON.stringify(respInfo)); + console.log(respInfo); done(); }); }); @@ -596,7 +597,7 @@ describe('test start bucket manager', function () { bucketManager.listBucketDomains(bucket, function (err, respBody, respInfo) { should.not.exist(err); console.log(JSON.stringify(respBody) + '\n'); - console.log(JSON.stringify(respInfo)); + console.log(respInfo); done(); }); }); From 14bb06bb4f412c64a73f56df87474b2b9603df9b Mon Sep 17 00:00:00 2001 From: helloyou2012 Date: Thu, 19 Mar 2020 17:17:44 +0800 Subject: [PATCH 2/4] lint fix --- examples/pfops_video_plus.js | 11 ++--- examples/sms.js | 80 ++++++++++++++++++------------------ index.js | 2 +- qiniu/sms/message.js | 64 ++++++++++++++--------------- test/rs.test.js | 1 + 5 files changed, 77 insertions(+), 81 deletions(-) diff --git a/examples/pfops_video_plus.js b/examples/pfops_video_plus.js index 67648ecf..e89ce0e9 100644 --- a/examples/pfops_video_plus.js +++ b/examples/pfops_video_plus.js @@ -1,5 +1,4 @@ var qiniu = require('qiniu'); -var urllib = require('urllib'); qiniu.conf.ACCESS_KEY = 'ak'; qiniu.conf.SECRET_KEY = 'sk'; @@ -44,13 +43,9 @@ var json = { var accessToken = qiniu.util.generateAccessTokenV2(mac, url, 'POST', 'application/json', JSON.stringify(json)); -urllib.request(url, { - method: 'POST', - headers: { - Authorization: accessToken, - 'Content-Type': 'application/json' - }, - data: JSON.stringify(json) +qiniu.rpc.post(url, JSON.stringify(json), { + Authorization: accessToken, + 'Content-Type': 'application/json' }, function (err, data, res) { if (err) { console.log(err); diff --git a/examples/sms.js b/examples/sms.js index 14728967..65df4cb6 100644 --- a/examples/sms.js +++ b/examples/sms.js @@ -4,7 +4,7 @@ const should = require('should'); const assert = require('assert'); // eslint-disable-next-line no-undef -before(function(done) { +before(function (done) { if (!process.env.QINIU_ACCESS_KEY || !process.env.QINIU_SECRET_KEY) { console.log('should run command `source test-env.sh` first\n'); process.exit(0); @@ -13,25 +13,25 @@ before(function(done) { }); // message -describe('test Message', function() { +describe('test Message', function () { var accessKey = proc.env.QINIU_ACCESS_KEY; var secretKey = proc.env.QINIU_SECRET_KEY; var mac = new qiniu.auth.digest.Mac(accessKey, secretKey); // eslint-disable-next-line no-undef - describe('test sendMessage', function() { + describe('test sendMessage', function () { // eslint-disable-next-line no-undef - it('test sendMessage', function(done) { - var num = new Array("17321129884","18120582893"); + it('test sendMessage', function (done) { + var num = ['17321129884', '18120582893']; var reqBody = { - "template_id": "1199572412090290176", - "mobiles": num, - "parameters": { - "prize": "3333", - "name": "sendMessage", - "time": "1238" + template_id: '1199572412090290176', + mobiles: num, + parameters: { + prize: '3333', + name: 'sendMessage', + time: '1238' } }; - qiniu.sms.message.sendMessage(reqBody, mac, function(respErr, respBody, + qiniu.sms.message.sendMessage(reqBody, mac, function (respErr, respBody, respInfo) { should.not.exist(respErr); assert.strictEqual(respInfo.statusCode, 200); @@ -39,18 +39,18 @@ describe('test Message', function() { }); }); }); - describe('test sendSingleMessage', function() { - it('test sendSingleMessage', function(done) { + describe('test sendSingleMessage', function () { + it('test sendSingleMessage', function (done) { var reqBody = { - "template_id": "1199572412090290176", - "mobile": "17321129884", - "parameters": { - "prize": "3333", - "name": "sendSingleMessage", - "time": "1238" + template_id: '1199572412090290176', + mobile: '17321129884', + parameters: { + prize: '3333', + name: 'sendSingleMessage', + time: '1238' } }; - qiniu.sms.message.sendSingleMessage(reqBody, mac, function(respErr, respBody, + qiniu.sms.message.sendSingleMessage(reqBody, mac, function (respErr, respBody, respInfo) { should.not.exist(respErr); assert.strictEqual(respInfo.statusCode, 200); @@ -58,18 +58,18 @@ describe('test Message', function() { }); }); }); - describe('test sendOverseaMessage', function() { - it('test sendOverseaMessage', function(done) { + describe('test sendOverseaMessage', function () { + it('test sendOverseaMessage', function (done) { var reqBody = { - "template_id": "1199572412090290176", - "mobile": "17321129884", - "parameters": { - "prize": "3333", - "name": "1111", - "time": "1238" + template_id: '1199572412090290176', + mobile: '17321129884', + parameters: { + prize: '3333', + name: '1111', + time: '1238' } }; - qiniu.sms.message.sendOverseaMessage(reqBody, mac, function(respErr, respBody, + qiniu.sms.message.sendOverseaMessage(reqBody, mac, function (respErr, respBody, respInfo) { should.not.exist(respErr); assert.strictEqual(respInfo.statusCode, 200); @@ -77,19 +77,19 @@ describe('test Message', function() { }); }); }); - describe('test sendFulltextMessage', function() { - it('test sendFulltextMessage', function(done) { - var num = new Array("17321129884","18120582893"); + describe('test sendFulltextMessage', function () { + it('test sendFulltextMessage', function (done) { + var num = ['17321129884', '18120582893']; var reqBody = { - "mobiles": num, - "content": "【七牛云-测试】您的验证码为1121,该验证码5分钟内有效", - "template_type": "verification" + mobiles: num, + content: '【七牛云-测试】您的验证码为1121,该验证码5分钟内有效', + template_type: 'verification' }; - qiniu.sms.message.sendFulltextMessage(reqBody, mac, function(respErr, respBody, + qiniu.sms.message.sendFulltextMessage(reqBody, mac, function (respErr, respBody, respInfo) { - if(respErr!=null){ - console.log(respErr); - } + if (respErr != null) { + console.log(respErr); + } should.not.exist(respErr); assert.strictEqual(respInfo.statusCode, 200); done(); diff --git a/index.js b/index.js index f65a218a..6eb310b1 100644 --- a/index.js +++ b/index.js @@ -15,6 +15,6 @@ module.exports = { room: require('./qiniu/rtc/room.js'), Credentials: require('./qiniu/rtc/credentials.js'), sms: { - message: require('./qiniu/sms/message.js'), + message: require('./qiniu/sms/message.js') } }; diff --git a/qiniu/sms/message.js b/qiniu/sms/message.js index 88b153f6..43ebeb96 100644 --- a/qiniu/sms/message.js +++ b/qiniu/sms/message.js @@ -1,52 +1,52 @@ const util = require('../util'); const rpc = require('../rpc'); -exports.sendMessage = function (reqBody,mac,callbackFunc){ +exports.sendMessage = function (reqBody, mac, callbackFunc) { reqBody = JSON.stringify(reqBody); var args = { - requestURI:"https://sms.qiniuapi.com/v1/message", - reqBody:reqBody, - mac:mac, - } - post(args,callbackFunc); -} + requestURI: 'https://sms.qiniuapi.com/v1/message', + reqBody: reqBody, + mac: mac + }; + post(args, callbackFunc); +}; -exports.sendSingleMessage = function (reqBody,mac,callbackFunc){ +exports.sendSingleMessage = function (reqBody, mac, callbackFunc) { reqBody = JSON.stringify(reqBody); var args = { - requestURI:"https://sms.qiniuapi.com/v1/message/single", - reqBody:reqBody, - mac:mac, - } - post(args,callbackFunc); -} + requestURI: 'https://sms.qiniuapi.com/v1/message/single', + reqBody: reqBody, + mac: mac + }; + post(args, callbackFunc); +}; -exports.sendOverseaMessage = function (reqBody,mac,callbackFunc){ +exports.sendOverseaMessage = function (reqBody, mac, callbackFunc) { reqBody = JSON.stringify(reqBody); var args = { - requestURI:"https://sms.qiniuapi.com/v1/message/oversea", - reqBody:reqBody, - mac:mac, - } - post(args,callbackFunc); -} + requestURI: 'https://sms.qiniuapi.com/v1/message/oversea', + reqBody: reqBody, + mac: mac + }; + post(args, callbackFunc); +}; -exports.sendFulltextMessage = function (reqBody,mac,callbackFunc){ +exports.sendFulltextMessage = function (reqBody, mac, callbackFunc) { reqBody = JSON.stringify(reqBody); var args = { - requestURI:"https://sms.qiniuapi.com/v1/message/fulltext", - reqBody:reqBody, - mac:mac, - } - post(args,callbackFunc); -} + requestURI: 'https://sms.qiniuapi.com/v1/message/fulltext', + reqBody: reqBody, + mac: mac + }; + post(args, callbackFunc); +}; -function post(args,callbackFunc){ +function post (args, callbackFunc) { var contentType = 'application/json'; var accessToken = util.generateAccessTokenV2(args.mac, args.requestURI, 'POST', contentType, args.reqBody); var headers = { - 'Authorization': accessToken, - 'Content-Type': contentType, - } + Authorization: accessToken, + 'Content-Type': contentType + }; rpc.post(args.requestURI, args.reqBody, headers, callbackFunc); } diff --git a/test/rs.test.js b/test/rs.test.js index 14f55b65..1cb833a9 100644 --- a/test/rs.test.js +++ b/test/rs.test.js @@ -301,6 +301,7 @@ describe('test start bucket manager', function () { }, function (err, respBody, respInfo) { // the irregular data return from Server that Cannot be converted by urllib to JSON Object // so err !=null and you can judge respBody==null or err.res.statusCode==200 + should.not.exist(err); console.log(respBody + '\n'); console.log(respInfo); done(); From ad36f33b8057fc2e43fe41dc4263c113e909c02d Mon Sep 17 00:00:00 2001 From: helloyou2012 Date: Thu, 19 Mar 2020 18:04:33 +0800 Subject: [PATCH 3/4] mocha back to v6.x for nodejs@v6 --- package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/package.json b/package.json index 8c750d59..ebe7c674 100644 --- a/package.json +++ b/package.json @@ -65,7 +65,7 @@ "eslint-plugin-node": "^11.0.0", "eslint-plugin-promise": "^4.2.1", "eslint-plugin-standard": "^4.0.1", - "mocha": "^7.1.1", + "mocha": "^6.2.2", "nyc": "^15.0.0", "should": "^13.2.3" }, From 7f90606d580fdf6d54691d1fe2ff9244188cdd72 Mon Sep 17 00:00:00 2001 From: helloyou2012 Date: Thu, 19 Mar 2020 18:31:36 +0800 Subject: [PATCH 4/4] test axios.get replace with rpc.get --- test/rs.test.js | 10 ++++------ 1 file changed, 4 insertions(+), 6 deletions(-) diff --git a/test/rs.test.js b/test/rs.test.js index 1cb833a9..ae6025e2 100644 --- a/test/rs.test.js +++ b/test/rs.test.js @@ -2,7 +2,6 @@ const should = require('should'); const assert = require('assert'); const qiniu = require('../index.js'); const proc = require('process'); -const axios = require('axios'); const console = require('console'); // eslint-disable-next-line no-undef @@ -47,12 +46,11 @@ describe('test start bucket manager', function () { it('test privateDownloadUrl', function (done) { var key = 'test_file'; var url = bucketManager.privateDownloadUrl('http://' + domain, key, 20); - axios.get(url).then((res) => { - console.log(res.data.toString(), res); - should.equal(res.status, 200); + qiniu.rpc.get(url, function (err, respBody, respInfo) { + console.log(respBody.toString(), respInfo); + should.not.exist(err); + should.equal(respInfo.status, 200); done(); - }).catch((err) => { - done(err); }); }); });