有人用过企微的文件上传接口吗?我的场景是需要传打印文件节点生成的 PDF 到企微里
12/11 更新:知道怎么改了,分享下代码...
三个 input:
- FileUrl:文件的地址,可以是明道云的附件,但需要提前用这个代码块来提取一下附件的 URL
- fileN:文件名,不包括扩展名
- keyId:企微的群聊机器人的 KeyID,就是 key=XXX 后面这段 XXX
我这里传的是 PDF 文件,如果是别的类型文件的话记得改 filename 和 contentType 的值
const FormData = require('form-data');
var data = await fetch(input.fileUrl).then(r => r.buffer()).then(buf => buf.toString('base64'));
var fileStream = Buffer.from(data, 'base64');
let formdata = new FormData();
formdata.append("file", fileStream, {
filename: input.fileN+".pdf",
contentType: 'application/pdf'
});
const response = await fetch("https://qyapi.weixin.qq.com/cgi-bin/webhook/upload_media?key="+input.keyId+"&type=file", {
body: formdata,
method: "POST",
headers: formdata.getHeaders()
});
const result = await response.json();
return result;
谢谢,不过和您之前发的不太一样。可以请您找着企微的这个接口写一个么?:)
https://work.weixin.qq.com/api/doc/90000/90136/91770#%E6%96%87%E4%BB%B6%E4%B8%8A%E4%BC%A0%E6%8E%A5%E5%8F%A3
没用过,上传文件应该大致都一样。参考 https://bbs.mingdao.net/topic/380