我正在尝试使用 DropBox API 从 DropBox 获取缩略图并将它们显示在 Salesforce 的 Lightning Web 组件上,但不能这样做,因为在响应 Apex 接收正文中带有黑色菱形和问号。
我使用标准的 HTTP 方法来调用
HttpRequest req = new HttpRequest();
req.setHeader('Authorization', 'Bearer sl.validToken');
req.setHeader('Dropbox-API-Arg', '{"resource": {".tag": "path","path": "/folderName/pictureName.jpg"},"format": "jpeg","size": "w64h64","mode": "strict"}');
req.setHeader('Content-Type', 'text/plain; charset=utf-8');
req.setEndpoint('https://content.dropboxapi.com/2/files/get_thumbnail_v2');
req.setMethod('POST');
Http httpreq = new Http();
HttpResponse res = httpreq.send(req);
这是我在 Apex 的响应正文中收到的内容。我在邮递员中也有同样的反应。 https://i.stack.imgur.com/90yjI.png
这就是我在 DropBox 资源管理器中具有相同值和标题(JSON)的内容 https://i.stack.imgur.com/ytDxv.png
文件范围为所有人阅读。SF 远程站点设置和 CSP 受信任站点已设置。
简短更新:我已经能够从标头获取 JSON。我确实使用了那段代码:
List<String> headers = new List<String>(res.getHeaderKeys());
for(String key : headers){
System.debug('key ->>> '+key+' = '+res.getHeader(key));
}
String jsonString = res.getHeader('Dropbox-Api-Result');
System.debug('->>>ddd '+jsonString);
但是仍然不明白如何在 LWC 中将其用作缩略图。
预先感谢您的帮助。