【发布时间】:2018-04-28 16:15:51
【问题描述】:
我正在使用 typescript (angular 4) 发布到 salesforce 端点
https://yourInstance.salesforce.com/services/data/v41.0/sobjects/ContentVersion/
我的 http 请求如下所示
Request Headers
Content-Type: multipart/form-data; boundary="1524931327799"
Authorization: Bearer <token>
Request Body
--1524931327799
Content-Disposition: form-data; name="entity_document";
Content-Type: application/json; charset=UTF-8
{
"PathOnClient" : "IMG_0400.jpg",
"Title": "IMG_0400.jpg"
}
--1524931327799
Content-Type: image/jpeg
Content-Disposition: form-data; name="VersionData"; filename="IMG_0400.jpg"
/9j/4AAQSkZJRgABAQAAAQABAAD/4QBsRXhpZgAASUkqAAgA <rest of base64 data>
--1524931327799--
在 salesforce 平台上打开图像后,我收到错误消息,指出图像可能已损坏或使用了 Preview 无法识别的文件格式。当我使用文本编辑打开图像时,请求中发送的 base64 数据相同。似乎问题在于 Salesforce 没有识别出文件是图像并且没有解码 base64 数据。欢迎所有和任何帮助!谢谢。
【问题讨论】:
-
您应该发送未经过 base64 编码的原始二进制数据。
-
感谢您的回复!不幸的是,我尝试只发送原始二进制文件,但结果相同。
标签: javascript rest http base64 salesforce