如何处理 .ajax post 中的 FileStream 返回类型?

2024-01-03

我通过以下代码发送 JSON 对象..控制器返回 CSV 格式的值,应提示打开或保存为 CSV 文件。我无法理解成功应该编写什么代码:函数(结果)

导出链接

Html.ActionLink("Export", "", "", null, new { @onclick = "return exportData();"})

function exportData() {

var searchViewModel = getExLogSearchModelData();
var path = getAbsolutePath("ExclusionLog", "ExportData");
$.ajax({
    url: path,
    cache: false,
    contentType: 'application/json; charset=utf-8',
    dataType: 'html',
    type: 'POST',
    data: JSON.stringify(searchViewModel),
    success: function (result) {
    },
    error: function (error) {
        $("#voidcontainer").html("Error");
    }
});

}

控制器动作结果

    public ActionResult ExportData(ExclusionLogSearchViewModel postSearchViewModel)
    {
        try
        {
            IEnumerable<ExclusionLogViewModel> exclusionLogData = null;
            exclusionLogcData = this._workerService.GetExclusionLogData(postSearchViewModel);

            return CSVFile(exclusionLogMembershipSyncData.GetStream<ExclusionLogViewModel>(), "ExclusionLogTables.Csv");
        }
        catch (Exception ex)
        {
                throw ex;
        }
        return null;
    }

你能建议如何做到这一点吗?


我遇到了同样的问题,但没有找到使用下载文件的方法$.ajax但我发现了一个优秀的 JavaScript 库,它提供了类似的行为:

https://github.com/johnculviner/jquery.file下载 https://github.com/johnculviner/jquery.fileDownload

你只需要调用这样的东西:

$.fileDownload(path, {
    httpMethod: 'POST',
    data: JSON.stringify(searchViewModel),
    success: function (result) {
    },
    error: function (error) {
        $("#voidcontainer").html("Error");
    }
});

并记住在控制器中创建 cookie。在src/Common有合适的动作过滤器可以为您做到这一点。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何处理 .ajax post 中的 FileStream 返回类型? 的相关文章

随机推荐

  • uiautomator - 当我验证每个列表项中的文本时,无法让 ListView 滚动。当我点击屏幕上的最后一个项目时,它就失败了

    我正在尝试验证 ListView 中每个列表项中的文本 并逐一向下滚动 以便我可以验证每个列表项 但由于某种原因 我无法让它继续滚动列表来验证每个元素 有没有人有幸自动化这种操作 这是我能做到的最接近的 如果这还不够 请告诉我 UiScro
  • Docker 中使用 capybara 和 headless selenium 浏览器进行 Rails 系统测试

    TL DR 关于如何正确配置 capybara 以便能够使用默认的 Rails minitest 系统测试在 docker 容器中驱动远程 selenium 浏览器 您有什么想法吗 我在 dockerized 环境中运行 Rails 现在我
  • 如何通过浏览弹出窗口设置路径?

    我有下面的脚本 其中有两个路径 一个是目标路径 只有一个 另一个是源路径 变量 关于下面的脚本函数 我将每月运行一次 它将转到源路径 10 路径 并复制最新文件 然后复制并重命名到目标路径 所有文件通用 注意 从响应源复制的文件应按照脚本重
  • 从 javascript 客户端连接到 asp.net core signalR 服务器

    我有 asp net core web api 服务器正在传输信号器 它适用于 asp net 客户端 我试图与下面显示的代码建立连接 但它只连接到非核心服务器 它不适用于核心服务器 the hub class in the server
  • isset() 和 PHP 全局变量

    关于全局变量初始化 function hello testing global conditional random if isset conditional random echo foo is inside 全局变量 condition
  • 根据数据框中的信息在 Pandas 数据框中创建变量

    我有一个按以下方式组织的数据框 var1 var2 var3 var4 0 A 23 B 7 1 B 13 C 4 2 C 12 A 11 3 A 5 C 15 我现在想要创建一个新变量 列 var5 如果 var1 A 它采用 var2
  • 如何在react js中删除Web应用程序cookie

    我是 ReactJs 的新手 我想删除 cookie 并在注销按钮上登录会话以断开用户的会话 但我无法访问代码中的cookie 请帮忙 如果您在 JWT 的 Express 后端的登录路由中的响应上设置 cookie 并使用 httpOnl
  • 多表还是单表?

    我已经看到一些论坛有这个问题 但他们没有回答我想知道的一件事 我先解释一下我的主题 我有一个系统 其中多个用户的每个日志都输入到数据库中 例如 用户1登录 用户2登录 用户1进入用户管理 用户2更改密码等 因此 我预计每个用户每天有 100
  • 如何在 Seaborn 箱线图中加宽框?

    我正在尝试使用 Seaborn 制作分组箱线图 参考 http stanford edu mwaskom software seaborn examples grouped boxplot html 而且这些盒子都非常窄 太窄了 看不清分组
  • 如何让JProgressBar匹配Windows LaF?

    我已经工作了一段时间了JProgressBar using WindowsLookAndFeel 但我发现与原生进度条有一些主要区别 这是正常状态下的原生栏 虽然这是 Java 的 敏锐的眼睛可能会发现爪哇顶部的白色更亮 绿色也更亮一些 此
  • Blazor 输入复选框

    所以总体目标是我希望在表格上有复选框 所有不同的图案和不同类型的剪裁 男装 女装 通用 并且我希望能够检查图案 x y 和 z 然后剪裁类型男士和女士 然后将我检查过的值传递或访问到一个方法 然后该方法执行所有独特的配置 然后调用我的数据访
  • 如何在业务逻辑层实现事务

    我在我的 asp net 应用程序中使用企业库数据访问块 我想从业务逻辑层跨多个存储过程实现事务 Entlib 打开一个新连接以进行数据库访问 按以下方式使用 Transaction Scope 是否会导致分布式事务 using Trans
  • 我们可以重载Java中的main方法吗?

    我们可以超载吗main Java 中的方法 You can超载main 方法 但仅public static void main String args 当你的类被 JVM 启动时将会被使用 例如 public class Test pub
  • LINQ ToDictionary 和 ToLookup 之间有什么区别

    LINQ ToDictionary 和 ToLookup 之间有什么区别 他们似乎做同样的事情 字典是 1 1 映射 每个键映射到单个值 并且字典在事后是可变的 可编辑的 查找是一个 1 many 映射 多映射 每个键都映射到一个IEnum
  • Spotify 的自定义网络播放器

    据我所知 不可能开发一个Web应用程序 在spotify com之外 提供播放Spotify歌曲的自定义Web播放器 对吗 唯一的选择似乎仍然是 Spotify 播放按钮 但功能非常有限 然而我刚刚看到这个例子 1 http static
  • 如何应对 R 中的“非数字矩阵范围”错误?

    我正在尝试使用标准随机方程从学生的 t 分布生成模拟值的数据框 我使用的函数如下 matgen lt function means chi covariancematrix cols lt ncol means normals lt mvr
  • 如何使用 Python 在 Spark 中添加两个稀疏向量

    我到处搜索 但找不到如何使用 Python 添加两个稀疏向量 我想添加两个稀疏向量 如下所示 1048576 110522 0 6931 521365 1 0986 697409 1 0986 725041 0 6931 749730 0
  • Grails 3.2 JSON 视图中的 Java 8 LocalDate

    当我尝试使用 a 来解析包含 Java 8 LocalDateTime 的简单域模型对象时json视图 http docs grails org latest guide single html whatsNewJSONViews 我收到一
  • 如何使用反射调用自定义运算符

    在我的小项目中我使用System Reflection类来生成可执行代码 我需要打电话给 自定义类型的运算符 有谁知道如何使用 C 反射调用自定义类的自定义运算符 C 编译器将重载运算符转换为具有名称的函数op XXXX where XXX
  • 如何处理 .ajax post 中的 FileStream 返回类型?

    我通过以下代码发送 JSON 对象 控制器返回 CSV 格式的值 应提示打开或保存为 CSV 文件 我无法理解成功应该编写什么代码 函数 结果 导出链接 Html ActionLink Export null new onclick ret