如何使用Azure逻辑应用程序操作在浏览器中下载文件

时间:2018-10-05 14:45:05

标签: azure azure-functions azure-logic-apps

最初,我创建了一个逻辑应用程序,将给定JSON有效负载,然后运行存储过程,将结果转换为CSV表,然后将CSV通过电子邮件发送到指定的电子邮件帐户。不幸的是,需求稍有变化,他们希望直接在浏览器中下载而不是通过电子邮件发送csv。

我无法通过HTTP响应操作来告诉浏览器使用Content-Disposition标头下载文件。看来这是设计使然。是否有人知道可以用其他动作(也许是功能?)代替HTTP响应来使Web浏览器下载文件,而不是将其作为文本返回到响应主体中?

1 个答案:

答案 0 :(得分:1)

似乎确实是因为某些原因,Response操作不支持Content-Disposition标头。可能最简单的工作流程是通过启用了CORS的简单HTTP触发的Azure函数(或服务器上的API)通过简单的HTTP触发的Azure函数来代理请求,该函数仅从Logic App中获取文件,然后返回带有Content-Disposition标头的返回。 / p>

NB。不要依赖<a download="filename">-大多数支持download属性的浏览器仅对同源请求提供尊重。