使用Media Formatters从Web API下载CSV文件

Downloading a CSV from Web API using Media Formatters

本文关键字:下载 CSV 文件 API Web Media Formatters 使用      更新时间:2023-09-26

我在从web API下载CSV时有麻烦。我按照这个网站http://www.asp.net/web-api/overview/formats-and-model-binding/media-formatters上关于媒体格式化器的说明,可以使用jquery下载CSV,并将Accept Header设置为"text/CSV"。我的问题是,我不能保存文件,一旦内容已下载。如果我尝试打开一个新窗口下载内容,我无法设置Accept Header

我的问题是,我不能保存文件一旦内容已经下载

你当然不能。您根本不应该使用javascript来下载文件,因为正如您已经发现的那样,除了在警告中显示该文件或将其设置为某些DOM元素的innerHTML之外,您对该文件的内容做不了什么。您不能将文件保存到用户计算机(当然),也不能打开"另存为文件"对话框,以便用户可以为它选择一个位置。

如果最终目标是将文件保存在用户计算机中,那么不要使用javascript。使用一个普通的锚点或HTML表单指向您的Web API操作,该操作将返回该文件。