@@ -74,7 +74,8 @@ exports.Zone_ap_northeast_1 = new conf.Zone([
74
74
75
75
exports . getZoneInfo = function ( accessKey , bucket , callbackFunc ) {
76
76
const apiAddr = util . format (
77
- 'https://uc.qbox.me/v2/query?ak=%s&bucket=%s' ,
77
+ 'https://%s/v4/query?ak=%s&bucket=%s' ,
78
+ conf . UC_HOST ,
78
79
accessKey ,
79
80
bucket
80
81
) ;
@@ -91,37 +92,35 @@ exports.getZoneInfo = function (accessKey, bucket, callbackFunc) {
91
92
return ;
92
93
}
93
94
94
- const zoneData = JSON . parse ( respData ) ;
95
- const srcUpHosts = [ ] ;
96
- const cdnUpHosts = [ ] ;
95
+ let zoneData ;
96
+ try {
97
+ const hosts = JSON . parse ( respData ) . hosts ;
98
+ if ( ! hosts || ! hosts . length ) {
99
+ respErr = new Error ( 'no host available: ' + respData ) ;
100
+ callbackFunc ( respErr , null , null ) ;
101
+ return ;
102
+ }
103
+ zoneData = hosts [ 0 ] ;
104
+ } catch ( err ) {
105
+ callbackFunc ( err , null , null ) ;
106
+ return ;
107
+ }
108
+ let srcUpHosts = [ ] ;
109
+ let cdnUpHosts = [ ] ;
97
110
let zoneExpire = 0 ;
98
111
99
112
try {
100
113
zoneExpire = zoneData . ttl ;
101
114
// read src hosts
102
- zoneData . up . src . main . forEach ( function ( host ) {
103
- srcUpHosts . push ( host ) ;
104
- } ) ;
105
- if ( zoneData . up . src . backup ) {
106
- zoneData . up . src . backup . forEach ( function ( host ) {
107
- srcUpHosts . push ( host ) ;
108
- } ) ;
109
- }
115
+ srcUpHosts = zoneData . up . domains ;
110
116
111
117
// read acc hosts
112
- zoneData . up . acc . main . forEach ( function ( host ) {
113
- cdnUpHosts . push ( host ) ;
114
- } ) ;
115
- if ( zoneData . up . acc . backup ) {
116
- zoneData . up . acc . backup . forEach ( function ( host ) {
117
- cdnUpHosts . push ( host ) ;
118
- } ) ;
119
- }
118
+ cdnUpHosts = zoneData . up . domains ;
120
119
121
- const ioHost = zoneData . io . src . main [ 0 ] ;
122
- const rsHost = zoneData . rs . acc . main [ 0 ] ;
123
- const rsfHost = zoneData . rsf . acc . main [ 0 ] ;
124
- const apiHost = zoneData . api . acc . main [ 0 ] ;
120
+ const ioHost = zoneData . io . domains [ 0 ] ;
121
+ const rsHost = zoneData . rs . domains [ 0 ] ;
122
+ const rsfHost = zoneData . rsf . domains [ 0 ] ;
123
+ const apiHost = zoneData . api . domains [ 0 ] ;
125
124
const zoneInfo = new conf . Zone (
126
125
srcUpHosts ,
127
126
cdnUpHosts ,
0 commit comments