oss-client
Version:
Aliyun OSS(Object Storage Service) Node.js Client
26 lines • 2.29 kB
JavaScript
export function encodeCallback(objectCallback) {
const data = {
// must use encodeURI not encodeURIComponent
callbackUrl: encodeURI(objectCallback.url),
callbackBody: objectCallback.body,
};
if (objectCallback.host) {
data.callbackHost = objectCallback.host;
}
if (objectCallback.contentType) {
data.callbackBodyType = objectCallback.contentType;
}
const callbackHeaderValue = Buffer.from(JSON.stringify(data)).toString('base64');
const options = {
callback: callbackHeaderValue,
};
if (objectCallback.customValue) {
const callbackVar = {};
for (const key in objectCallback.customValue) {
callbackVar[`x:${key}`] = objectCallback.customValue[key].toString();
}
options.callbackVar = Buffer.from(JSON.stringify(callbackVar)).toString('base64');
}
return options;
}
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZW5jb2RlQ2FsbGJhY2suanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvdXRpbC9lbmNvZGVDYWxsYmFjay50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFPQSxNQUFNLFVBQVUsY0FBYyxDQUFDLGNBQThCO0lBQzNELE1BQU0sSUFBSSxHQUEyQjtRQUNuQyw0Q0FBNEM7UUFDNUMsV0FBVyxFQUFFLFNBQVMsQ0FBQyxjQUFjLENBQUMsR0FBRyxDQUFDO1FBQzFDLFlBQVksRUFBRSxjQUFjLENBQUMsSUFBSTtLQUNsQyxDQUFDO0lBQ0YsSUFBSSxjQUFjLENBQUMsSUFBSSxFQUFFLENBQUM7UUFDeEIsSUFBSSxDQUFDLFlBQVksR0FBRyxjQUFjLENBQUMsSUFBSSxDQUFDO0lBQzFDLENBQUM7SUFDRCxJQUFJLGNBQWMsQ0FBQyxXQUFXLEVBQUUsQ0FBQztRQUMvQixJQUFJLENBQUMsZ0JBQWdCLEdBQUcsY0FBYyxDQUFDLFdBQVcsQ0FBQztJQUNyRCxDQUFDO0lBQ0QsTUFBTSxtQkFBbUIsR0FBRyxNQUFNLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxRQUFRLENBQ3BFLFFBQVEsQ0FDVCxDQUFDO0lBQ0YsTUFBTSxPQUFPLEdBQW9CO1FBQy9CLFFBQVEsRUFBRSxtQkFBbUI7S0FDOUIsQ0FBQztJQUVGLElBQUksY0FBYyxDQUFDLFdBQVcsRUFBRSxDQUFDO1FBQy9CLE1BQU0sV0FBVyxHQUEyQixFQUFFLENBQUM7UUFDL0MsS0FBSyxNQUFNLEdBQUcsSUFBSSxjQUFjLENBQUMsV0FBVyxFQUFFLENBQUM7WUFDN0MsV0FBVyxDQUFDLEtBQUssR0FBRyxFQUFFLENBQUMsR0FBRyxjQUFjLENBQUMsV0FBVyxDQUFDLEdBQUcsQ0FBQyxDQUFDLFFBQVEsRUFBRSxDQUFDO1FBQ3ZFLENBQUM7UUFDRCxPQUFPLENBQUMsV0FBVyxHQUFHLE1BQU0sQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxXQUFXLENBQUMsQ0FBQyxDQUFDLFFBQVEsQ0FDckUsUUFBUSxDQUNULENBQUM7SUFDSixDQUFDO0lBQ0QsT0FBTyxPQUFPLENBQUM7QUFDakIsQ0FBQyJ9