@@ -2991,12 +2991,13 @@ function getAuth(params) {
29912991 */
29922992function getObjectUrl ( params , callback ) {
29932993 var self = this ;
2994+ var useAccelerate = params . UseAccelerate === undefined ? self . options . UseAccelerate : params . UseAccelerate ;
29942995 var url = getUrl ( {
29952996 ForcePathStyle : self . options . ForcePathStyle ,
29962997 protocol : params . Protocol || self . options . Protocol ,
29972998 domain : params . Domain || self . options . Domain ,
29982999 bucket : params . Bucket ,
2999- region : params . Region ,
3000+ region : useAccelerate ? 'accelerate' : params . Region ,
30003001 object : params . Key ,
30013002 } ) ;
30023003
@@ -3016,7 +3017,7 @@ function getObjectUrl(params, callback) {
30163017 }
30173018
30183019 // 签名加上 Host,避免跨桶访问
3019- var SignHost = getSignHost . call ( this , { Bucket : params . Bucket , Region : params . Region , Url : url } ) ;
3020+ var SignHost = getSignHost . call ( this , { Bucket : params . Bucket , Region : params . Region , UseAccelerate : params . UseAccelerate , Url : url } ) ;
30203021 var AuthData = getAuthorizationAsync . call ( this , {
30213022 Action : ( ( params . Method || '' ) . toUpperCase ( ) === 'PUT' ? 'name/cos:PutObject' : 'name/cos:GetObject' ) ,
30223023 Bucket : params . Bucket || '' ,
@@ -3186,12 +3187,13 @@ function getUrl(params) {
31863187
31873188var getSignHost = function ( opt ) {
31883189 if ( ! opt . Bucket || ! opt . Region ) return '' ;
3190+ var useAccelerate = opt . UseAccelerate === undefined ? this . options . UseAccelerate : opt . UseAccelerate ;
31893191 var url = opt . Url || getUrl ( {
31903192 ForcePathStyle : this . options . ForcePathStyle ,
31913193 protocol : this . options . Protocol ,
31923194 domain : this . options . Domain ,
31933195 bucket : opt . Bucket ,
3194- region : this . options . UseAccelerate ? 'accelerate' : opt . Region ,
3196+ region : useAccelerate ? 'accelerate' : opt . Region ,
31953197 } ) ;
31963198 var urlHost = url . replace ( / ^ h t t p s ? : \/ \/ ( [ ^ / ] + ) ( \/ .* ) ? $ / , '$1' ) ;
31973199 var standardHostReg = new RegExp ( '^([a-z\\d-]+-\\d+\\.)?(cos|cosv6|ci|pic)\\.([a-z\\d-]+)\\.myqcloud\\.com$' ) ;
0 commit comments