|  | exports.encodeCallback = function encodeCallback(reqParams, options) { | 
						
						
							|  |   reqParams.headers = reqParams.headers || {}; | 
						
						
							|  |   if (!Object.prototype.hasOwnProperty.call(reqParams.headers, 'x-oss-callback')) { | 
						
						
							|  |     if (options.callback) { | 
						
						
							|  |       const json = { | 
						
						
							|  |         callbackUrl: encodeURI(options.callback.url), | 
						
						
							|  |         callbackBody: options.callback.body | 
						
						
							|  |       }; | 
						
						
							|  |       if (options.callback.host) { | 
						
						
							|  |         json.callbackHost = options.callback.host; | 
						
						
							|  |       } | 
						
						
							|  |       if (options.callback.contentType) { | 
						
						
							|  |         json.callbackBodyType = options.callback.contentType; | 
						
						
							|  |       } | 
						
						
							|  |       if (options.callback.callbackSNI) { | 
						
						
							|  |         json.callbackSNI = options.callback.callbackSNI; | 
						
						
							|  |       } | 
						
						
							|  |       const callback = Buffer.from(JSON.stringify(json)).toString('base64'); | 
						
						
							|  |       reqParams.headers['x-oss-callback'] = callback; | 
						
						
							|  | 
 | 
						
						
							|  |       if (options.callback.customValue) { | 
						
						
							|  |         const callbackVar = {}; | 
						
						
							|  |         Object.keys(options.callback.customValue).forEach(key => { | 
						
						
							|  |           callbackVar[`x:${key}`] = options.callback.customValue[key].toString(); | 
						
						
							|  |         }); | 
						
						
							|  |         reqParams.headers['x-oss-callback-var'] = Buffer.from(JSON.stringify(callbackVar)).toString('base64'); | 
						
						
							|  |       } | 
						
						
							|  |     } | 
						
						
							|  |   } | 
						
						
							|  | };
 |