我正在开发需要salesforce集成的Android应用程序。
根据当前要求,我想将图像文件从Android应用程序上传到salesforce自定义对象。我可以使用salesforce REST API将其他数据发布到自定义对象(即其他图像文件) - 但我在salesforce API中找不到任何支持客户端/ Android文件上传操作(多部分上传)的选项。
有没有其他方法可以将文件/图像数据发布到salesforce.com并存储到自定义对象?
对此有任何帮助/指针 - 非常感谢。谢谢。
答案 0 :(得分:1)
来自@ superfell的博客:
在最近的Spring发行版(v24)中......您现在可以直接在http请求或响应中使用二进制数据(顶点中的blob)。以下是为图像PNG文件发出HTTP GET请求并将其保存到salesforce中的文档对象的示例。
这是您将二进制数据保存到force.com中的文档的方法。您可以将该文档链接到自定义对象。
HttpRequest r = new HttpRequest();
r.setMethod('GET');
r.setEndpoint('http://www.pocketsoap.com/osx/soqlx/soqlxicon.png');
Http http = new Http();
HttpResponse res = http.send(r);
blob image = res.getBodyAsBlob();
Document d = new Document();
d.name = 'logo.png';
d.body = image;
d.folderId = UserInfo.getUserId();
insert d;
system.debug(d.id);
否则,您可以将图像的base64编码版本保存在自定义对象的长文本字段中。