逻辑应用程序:从 HTTP 将文件上传到共享点

问题描述 投票:0回答:1

我开发了一个逻辑应用程序,它应该从远程位置下载文件并将它们存储在 Share Point 中。

所有文件均为 png 或 gif 文件。

共享点连接器 - 上传文件上,我使用

binary(body('DOWNLOAD'))
作为输入。但是,Sharepoint 上的图像已损坏。

更深入地观察,Logic App 尝试将图像解析为 UTF-8 字符串,这会破坏图像。

查看十六进制级别,png 看起来有所不同。

test1x1.bad.png
是Sharepoint的结果,
test1x1.png
是原始结果。

$ xxd test1x1.bad.png | head -n 3
00000000: efbf bd50 4e47 0d0a 1a0a 0000 000d 4948  ...PNG........IH
00000010: 4452 0000 00ef bfbd 0000 00ef bfbd 0803  DR..............
00000020: 0000 00ef bfbd efbf bdef bfbd efbf bd00  ................
$ xxd test1x1.png | head -n 3
00000000: 8950 4e47 0d0a 1a0a 0000 000d 4948 4452  .PNG........IHDR
00000010: 0000 0080 0000 0080 0803 0000 00f4 e091  ................
00000020: f900 0002 7350 4c54 45ff ffff 3333 3333  ....sPLTE...3333

如何避免逻辑应用将正文解析为 UTF-8 字符串?

我也尝试了

body('DOWNLOAD')
base64ToBinary(body('DOWNLOAD')['$content'])
,但没有什么区别。
body('DOWNLOAD')['$content']
返回图像的base64值。

azure sharepoint azure-logic-apps sharepoint-online
1个回答
0
投票

body('DOWNLOAD')
应该工作得很好。证明:

https://www.google.com/images/branding/googlelogo/2x/googlelogo_color_272x92dp.png -

下载 Google 徽标

将其保存到 SharePoint:

结果:

© www.soinside.com 2019 - 2024. All rights reserved.