@@ -11,6 +11,9 @@ const ua = require('./ua');
11
11
const Base = require ( './base' ) ;
12
12
13
13
const form = 'application/x-www-form-urlencoded' ;
14
+ const hasOwnProperty = function ( obj , key ) {
15
+ Object . prototype . hasOwnProperty . call ( obj , key ) ;
16
+ } ;
14
17
15
18
/**
16
19
* API Gateway Client
@@ -83,7 +86,7 @@ class Client extends Base {
83
86
for ( var i = 0 ; i < keys . length ; i ++ ) {
84
87
var key = keys [ i ] ;
85
88
// x-ca- 开头的header或者指定的header
86
- if ( key . startsWith ( 'x-ca-' ) || signHeaders . hasOwnProperty ( key ) ) {
89
+ if ( key . startsWith ( 'x-ca-' ) || hasOwnProperty ( signHeaders , key ) ) {
87
90
signKeys . push ( key ) ;
88
91
}
89
92
}
@@ -111,28 +114,14 @@ class Client extends Base {
111
114
return result ;
112
115
}
113
116
114
- loweredKeys ( headers = { } ) {
115
- var lowered = { } ;
116
-
117
- var keys = Object . keys ( headers ) ;
118
- for ( let i = 0 ; i < keys . length ; i ++ ) {
119
- let key = keys [ i ] ;
120
- lowered [ key . toLowerCase ( ) ] = headers [ key ] ;
121
- }
122
-
123
- return lowered ;
124
- }
125
-
126
117
buildHeaders ( headers = { } , signHeaders ) {
127
- var now = new Date ( ) ;
128
-
129
118
return Object . assign ( {
130
- 'x-ca-timestamp' : now . getTime ( ) ,
119
+ 'x-ca-timestamp' : Date . now ( ) ,
131
120
'x-ca-key' : this . appKey ,
132
121
'x-ca-nonce' : uuid . v4 ( ) ,
133
122
'x-ca-stage' : this . stage ,
134
123
'accept' : 'application/json'
135
- } , this . loweredKeys ( headers ) , signHeaders ) ;
124
+ } , headers , signHeaders ) ;
136
125
}
137
126
138
127
getSignedHeadersString ( signHeaders , headers ) {
@@ -146,7 +135,7 @@ class Client extends Base {
146
135
}
147
136
148
137
* request ( method , url , opts , originData ) {
149
- var signHeaders = this . loweredKeys ( opts . signHeaders ) ;
138
+ var signHeaders = opts . signHeaders ;
150
139
// 小写化,合并之后的headers
151
140
var headers = this . buildHeaders ( opts . headers , signHeaders ) ;
152
141
0 commit comments