我们有一个显示报告的网页,带有一组动态过滤器。
用户选择一个命名报告,页面从 WebApi 获取有效过滤器作为 JSON 列表。用户可以选择过滤器,然后在网格中显示结果(同样通过 WebApi 调用)。到目前为止一切都很好
现在我们允许将数据下载为文件(例如 Excel),但遇到了问题。
我们希望发送带有 JSON 过滤数据的 HttpPost(但不是AJAX帖子),以便浏览器下载文件。我们不能使用 JQuery $.ajax 或 $.post,因为数据是在回调中返回的,而不是作为浏览器处理的下载。
我们尝试了一个标签和一个提交按钮,但搜索 StackOverflow 表明这仅支持以名称-值对的形式发送数据,而不是 JSON 正文。除非你知道不同?
似乎最简单的方法是使用带有单个隐藏输入字段的 a,将 JSON 的内容编码在隐藏控件中,然后在服务器上手动反序列化它?