【前言】:
在介绍本篇前早已介绍过Partner Community和Site的相关配置,其目的是绕过登录直接访问到系统资源。
【项目背景】:
在做房地产项目时,需要将平台放盘信息同步到其他5大平台,那针对小区/单元/房子的照片文件需要以URL形式传给第三方直接展示,由于实施房地产项目时是将图片存在Attachment对象里边,那么直接通过:
Salesforce Domain + /servlet/servlet.FileDownload?file=attachID,如:
https://cs72.salesforce.com/servlet/servlet.FileDownload?file=00P5D000001MDkNUAW的形式打开图片资源,需要登录这一步操作,所以如何绕开登录必定是这一方案的拦路虎,于是有了本篇文章。
【需求变更】:
后续需要使用Document来存储加了水印的图片,那这时候则需使用下面链接:
https://dev-eandv.cs57.force.com/servlet/servlet.ImageServer?id=0150k0000008JEtAAM&oid=00D0k0000008oHHEAY
参数介绍:
id -> document id;
oid -> orgnizationId;
apex获取组织ID方式:UserInfo.getOrganizationId();
【场景2】:通过Document将文件暴露给外部
Format: https://yourdomain.force.com/servlet/servlet.ImageServer?id=<Document ID>&oid=<Org ID>;
Description:
1. yourdomain -> 站点domain;
2. Document ID -> 将图片上传至Documents后记录ID - 需要勾上外部可见;
3. Org ID -> 可以从Company Information中得到;
Sample: https://cfeedback-developer-edition.ap5.force.com/livechat/servlet/servlet.ImageServer?id=0157F000001I0SX&oid=00D7F0000001YCz
【最佳实践】:
未完待续。。。