n8n-nodes-wechat-work
Version:
49 lines • 1.75 kB
JavaScript
;
var __importDefault = (this && this.__importDefault) || function (mod) {
return (mod && mod.__esModule) ? mod : { "default": mod };
};
Object.defineProperty(exports, "__esModule", { value: true });
const WechatWorkRequestUtils_1 = __importDefault(require("../../../help/utils/WechatWorkRequestUtils"));
const MediaGetOperate = {
name: '获取临时素材',
value: 'media:get',
options: [
{
displayName: '媒体文件ID',
name: 'media_id',
type: 'string',
default: '',
required: true,
}
],
async call(index) {
const media_id = this.getNodeParameter('media_id', index);
const response = await WechatWorkRequestUtils_1.default.originRequest.call(this, {
method: 'GET',
url: `/cgi-bin/media/get`,
qs: {
media_id,
},
encoding: null,
json: false,
resolveWithFullResponse: true,
});
let mimeType = response.headers['content-type'];
mimeType = mimeType ? mimeType.split(';').find((value) => value.includes('/')) : undefined;
const contentDisposition = response.headers['content-disposition'];
const fileNameRegex = /(?<=filename\*=utf-8'')(.*);/;
const match = contentDisposition.match(fileNameRegex);
let fileName = '';
if (match) {
fileName = decodeURIComponent(match[1]);
}
return {
json: {},
binary: {
media: await this.helpers.prepareBinaryData(response.body, fileName, mimeType),
},
};
},
};
exports.default = MediaGetOperate;
//# sourceMappingURL=MediaGetOperate.js.map