一尘不染

IE中的Json响应下载(7〜10)

json

我正在尝试上传文件并返回有关文件属性(名称,大小等)的json响应。它在除IE之外的所有浏览器中都能正常工作。

IE尝试将JSON下载为文件!

我有IE10,并通过从调试器更改浏览器模式和文档模式,在IE7到10上对其进行了测试。

我正在使用asp.net mvc4,文件上传操作具有HttpPost属性,并且我使用 return Json(myObject) 返回json响应

这是我的HTTP标头

请求

Key Value
Request POST /File/UploadFile/ HTTP/1.1
Accept  text/html, application/xhtml+xml, */*
Referer http://localhost:63903/
Accept-Language en-NZ
User-Agent  Mozilla/5.0 (compatible; MSIE 9.0; Windows NT 6.1; WOW64; Trident/5.0)
Content-Type    multipart/form-data; boundary=---------------------------7dc1e71330526
Accept-Encoding gzip, deflate
Host    localhost:63903
Content-Length  1377002
DNT 1
Connection  Keep-Alive
Cache-Control   no-cache

响应

Key Value
Response    HTTP/1.1 200 OK
Server  ASP.NET Development Server/11.0.0.0
Date    Tue, 18 Dec 2012 23:44:19 GMT
X-AspNet-Version    4.0.30319
X-AspNetMvc-Version 4.0
Cache-Control   private
Content-Type    application/json; charset=utf-8
Content-Length  154
Connection  Close

我尝试了一些建议,但到目前为止已经回到正题了!


阅读 210

收藏
2020-07-27

共1个答案

一尘不染

text/html由于IE不知道如何处理application/json内容,因此您将需要返回json 。

return Json(myObject, "text/html");

不确定,但是使用它可能会起作用( 如果这样做会更正确text/x-json

return Json(myObject, "text/x-json");
2020-07-27