Skip to content

Commit f37e4cd

Browse files
authored
Merge pull request #277 from d-band/master
Safe encode url
2 parents ba871db + 406e9b9 commit f37e4cd

File tree

3 files changed

+11
-16
lines changed

3 files changed

+11
-16
lines changed

package.json

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -47,16 +47,16 @@
4747
"email": "[email protected]"
4848
}],
4949
"engines": [
50-
"node >= 0.4.7"
50+
"node >= 4"
5151
],
5252
"dependencies": {
53-
"mime": "1.3.6",
54-
"formstream": "1.1.0",
55-
"crc32": "0.2.2",
56-
"urllib": "2.22.0",
5753
"agentkeepalive": "3.3.0",
54+
"crc32": "0.2.2",
55+
"encodeurl": "^1.0.1",
56+
"formstream": "1.1.0",
57+
"mime": "1.3.6",
5858
"tunnel-agent": "0.6.0",
59-
"urlencode": "1.1.0"
59+
"urllib": "2.22.0"
6060
},
6161
"devDependencies": {
6262
"@types/node": "^8.0.3",

qiniu/cdn.js

Lines changed: 3 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@ const crypto = require('crypto');
33
const urllib = require('urllib');
44
const util = require('./util');
55
const digest = require('./auth/digest.js');
6-
const urlencode = require('urlencode');
6+
const encodeUrl = require('encodeurl');
77

88
exports.CdnManager = CdnManager;
99

@@ -161,9 +161,9 @@ function req(reqPath, header, reqBody, callbackFunc) {
161161
CdnManager.prototype.createTimestampAntiLeechUrl = function(domain, fileName,
162162
query, encryptKey, deadline) {
163163
if (query != null) {
164-
urlToSign = domain + '/' + url_encode(fileName) + '?' + query;
164+
urlToSign = domain + '/' + encodeUrl(fileName) + '?' + query;
165165
} else {
166-
urlToSign = domain + '/' + url_encode(fileName);
166+
urlToSign = domain + '/' + encodeUrl(fileName);
167167
}
168168

169169
var urlObj = url.parse(urlToSign);
@@ -181,9 +181,3 @@ CdnManager.prototype.createTimestampAntiLeechUrl = function(domain, fileName,
181181
return urlToSign + '?sign=' + toSignStr + '&t=' + expireHex;
182182
}
183183
}
184-
185-
function url_encode(url){
186-
url = encodeURI(url);
187-
url = url.replace(/\'/g, "%27");
188-
return url;
189-
}

qiniu/storage/rs.js

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,7 @@ const url = require('url');
22
const crypto = require('crypto');
33
const formstream = require('formstream');
44
const querystring = require('querystring');
5+
const encodeUrl = require('encodeurl');
56
const rpc = require('../rpc');
67
const conf = require('../conf');
78
const digest = require('../auth/digest');
@@ -648,7 +649,7 @@ BucketManager.prototype.privateDownloadUrl = function(domain, fileName,
648649
// @param fileName 原始文件名
649650
// @return 公开下载链接
650651
BucketManager.prototype.publicDownloadUrl = function(domain, fileName) {
651-
return domain + "/" + encodeURI(fileName);
652+
return domain + '/' + encodeUrl(fileName);
652653

653654
}
654655

0 commit comments

Comments
 (0)