@@ -14,17 +14,17 @@ function getResponseHeaderMap(xhr: XMLHttpRequest) {
14
14
const responseHeaders = xhr . getAllResponseHeaders ( ) ;
15
15
if ( Object . keys ( responseHeaders ) . length ) {
16
16
responseHeaders
17
- . trim ( )
18
- . split ( / [ \r \n ] + / )
19
- . map ( value => value . split ( / : / ) )
20
- . forEach ( keyValue => {
21
- headers [ keyValue [ 0 ] . trim ( ) ] = keyValue [ 1 ] . trim ( ) ;
22
- } ) ;
17
+ . trim ( )
18
+ . split ( / [ \r \n ] + / )
19
+ . map ( value => value . split ( / : / ) )
20
+ . forEach ( keyValue => {
21
+ headers [ keyValue [ 0 ] . trim ( ) ] = keyValue [ 1 ] . trim ( ) ;
22
+ } ) ;
23
23
}
24
24
return headers ;
25
25
}
26
26
27
- const addResponseHeadersAndBody = ( body : any , xhr : XMLHttpRequest ) :IKResponse < UploadResponse > => {
27
+ const addResponseHeadersAndBody = ( body : any , xhr : XMLHttpRequest ) : IKResponse < UploadResponse > => {
28
28
let response = { ...body } ;
29
29
const responseMetadata = {
30
30
statusCode : xhr . status ,
@@ -38,7 +38,7 @@ const addResponseHeadersAndBody = (body: any, xhr: XMLHttpRequest):IKResponse<Up
38
38
return response as IKResponse < UploadResponse > ;
39
39
}
40
40
41
- export const request = ( uploadFileXHR : XMLHttpRequest , formData : FormData , options : ImageKitOptions & { authenticationEndpoint : string } , callback ?: ( err : Error | null , response : UploadResponse | null ) => void ) => {
41
+ export const request = ( uploadFileXHR : XMLHttpRequest , formData : FormData , options : ImageKitOptions & { authenticationEndpoint : string } , callback ?: ( err : Error | null , response : UploadResponse | null ) => void ) => {
42
42
generateSignatureToken ( options , ( err , signaturObj ) => {
43
43
if ( err ) {
44
44
return respond ( true , err , callback )
@@ -67,7 +67,7 @@ export const generateSignatureToken = (options: ImageKitOptions & { authenticati
67
67
var result = addResponseHeadersAndBody ( body , xhr ) ;
68
68
respond ( true , result , callback ) ;
69
69
} ;
70
- xhr . onerror = function ( ) {
70
+ xhr . onerror = function ( ) {
71
71
var body = errorMessages . AUTH_ENDPOINT_NETWORK_ERROR ;
72
72
var result = addResponseHeadersAndBody ( body , xhr ) ;
73
73
respond ( true , result , callback ) ;
@@ -81,6 +81,10 @@ export const generateSignatureToken = (options: ImageKitOptions & { authenticati
81
81
expire : body . expire ,
82
82
token : body . token
83
83
}
84
+ if ( ! obj . signature || ! obj . expire || ! obj . token ) {
85
+ respond ( true , { } , callback ) ;
86
+ return ;
87
+ }
84
88
var result = addResponseHeadersAndBody ( obj , xhr ) ;
85
89
respond ( false , result , callback ) ;
86
90
} catch ( ex ) {
@@ -100,9 +104,9 @@ export const generateSignatureToken = (options: ImageKitOptions & { authenticati
100
104
return ;
101
105
}
102
106
103
- export const uploadFile = ( uploadFileXHR :XMLHttpRequest , formData : FormData , callback : ( err : Error | IKResponse < UploadResponse > | null , response : UploadResponse | null ) => void ) => {
107
+ export const uploadFile = ( uploadFileXHR : XMLHttpRequest , formData : FormData , callback : ( err : Error | IKResponse < UploadResponse > | null , response : UploadResponse | null ) => void ) => {
104
108
uploadFileXHR . open ( 'POST' , 'https://upload.imagekit.io/api/v1/files/upload' ) ;
105
- uploadFileXHR . onerror = function ( ) {
109
+ uploadFileXHR . onerror = function ( ) {
106
110
var body = errorMessages . UPLOAD_ENDPOINT_NETWORK_ERROR ;
107
111
var result = addResponseHeadersAndBody ( body , uploadFileXHR ) ;
108
112
respond ( true , result , callback ) ;
@@ -116,11 +120,11 @@ export const uploadFile = (uploadFileXHR:XMLHttpRequest, formData: FormData, cal
116
120
}
117
121
else if ( uploadFileXHR . status !== 200 ) {
118
122
try {
119
- var body = JSON . parse ( uploadFileXHR . responseText ) ;
120
- var uploadResponse = addResponseHeadersAndBody ( body , uploadFileXHR ) ;
121
- callback ( uploadResponse , null ) ;
122
- } catch ( ex : any ) {
123
- callback ( ex , null ) ;
123
+ var body = JSON . parse ( uploadFileXHR . responseText ) ;
124
+ var uploadResponse = addResponseHeadersAndBody ( body , uploadFileXHR ) ;
125
+ callback ( uploadResponse , null ) ;
126
+ } catch ( ex : any ) {
127
+ callback ( ex , null ) ;
124
128
}
125
129
}
126
130
} ;
0 commit comments