Chr*_*son 6 javascript blob salesforce binary-data arraybuffer
我正在使用 Rest API 获取附件正文。
\nvar config = {\n method: 'get',\n url: '<Domanin>/services/data/v48.0/sobjects/Attachment/00PD000000HQD68MAH/Body',\n headers: {\n 'Authorization': `Bearer ${\n accessToken\n }`,\n 'content-type':'application/pdf'\n },\n };\n\n let rawData = await axios(config);\n rawData = rawData.data\n\n\nRun Code Online (Sandbox Code Playgroud)\n我正在获取这种格式的 PDF 数据
\n%PDF-1.5\n%\xc3\x93\xc3\xb4\xc3\x8c\xc3\xa1\n1 0 obj\n<<\nRun Code Online (Sandbox Code Playgroud)\n在客户端,我试图将其作为可下载文件,但我得到的是空白 pdf。实际的 pdf 包含 2 页,下载的 pdf 也包含两页,但它们是空白的。
\n客户端代码:
\n var downloadLink = document.createElement('a');\n downloadLink.target = '_blank';\n downloadLink.download = 'test.pdf';\n\n // convert downloaded data to a Blob\n var blob = new Blob(([rawData]), {type: 'application/pdf'});\n\n // create an object URL from the Blob\n var downloadUrl = URL.createObjectURL(blob);\n\n // set object URL as the anchor's href\n downloadLink.href = downloadUrl;\n\n // append the anchor to document body\n document.body.append(downloadLink);\n\n // fire a click event on the anchor\n downloadLink.click();\nRun Code Online (Sandbox Code Playgroud)\n请告诉我上面的逻辑有什么问题
\n请在请求配置中指定responseType: 'arraybuffer'。将您的配置对象修改为
{
method: 'get',
url: '<Domanin>/services/data/v48.0/sobjects/Attachment/00PD000000HQD68MAH/Body',
headers: {
'Authorization': `Bearer ${
accessToken
}`
},
'responseType': 'arraybuffer'
};
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
648 次 |
| 最近记录: |