我在MVC/IE8中遇到了一个很奇怪的问题,我想知道是否有人看到过类似的东西。我有一个URL,以http://application.mycompany/Controller.aspx/Action/ID1/ID2的形式返回excel电子表格(由于IIS的版本,我在路由中使用.aspx)。这从应用程序的页面打开,很好。我也有发送HTML代码的电子邮件,这些HTML代码包含链接,并且所有链接都可以打开,但它会提示错误:“无法从application.mycompany下载ID2,IE无法打开网站”。我检查过电子邮件中的HTML和页面上的链接位置,它们是相同的。如果我输入确切的链接文本(或从电子邮件中复制并粘贴)到IE地址栏中,它将再次失败,但如果我点击末尾地址栏中的相同文本并再次点击输入它加载并吐出文件。它似乎可以正常工作直接粘贴到FireFox中,但我无法检查点击链接并加载FF,因为我正在远程工作,而且我的Citrix桌面上没有Firefox,我也找不到任何人将它作为他们的默认浏览器(但因为它第一次工作,我会想象它会好的)。非常奇怪的ASP.NET MVC和IE8链接/ URL问题
有没有人看过这个或有任何想法可能会导致它,请?这个问题发生在多台机器上,因此就我所见,它不是一个奇怪的加载项/设置。
感谢
MH
----------------------------更新------- ---------------- 我使用Fiddler来查看发生了什么,除了时间戳之外,对两个请求的响应都是相同的。 失败响应: -
HTTP/1.1 200 OK
Cache-Control: no-cache
Pragma: no-cache
Content-Type: application/vnd.ms-excel; charset=utf-8
Expires: -1
Server: Microsoft-IIS/7.0
X-AspNetMvc-Version: 1.0
content-disposition: attachment;filename=Filename.xls
X-AspNet-Version: 2.0.50727
X-Powered-By: ASP.NET
Date: Mon, 20 Dec 2010 10:31:52 GMT
Content-Length: 2354
<style type"text/css">.text { mso-number-format:\@; } .TableHead { background-color: #BDBDBD; } </style>
....confidential file content removed
成功的响应: -
HTTP/1.1 200 OK
Cache-Control: no-cache
Pragma: no-cache
Content-Type: application/vnd.ms-excel; charset=utf-8
Expires: -1
Server: Microsoft-IIS/7.0
X-AspNetMvc-Version: 1.0
content-disposition: attachment;filename=Filename.xls
X-AspNet-Version: 2.0.50727
X-Powered-By: ASP.NET
Date: Mon, 20 Dec 2010 10:32:18 GMT
Content-Length: 2354
<style type"text/css">.text { mso-number-format:\@; } .TableHead { background-color: #BDBDBD; } </style>
,只是重申,我产生第二次请求的唯一的事情就是点击地址栏中的URL文本生成第一个请求并回车。
我得到的错误是“”Internet Explorer无法打开此Internet站点。请求的网站不可用或无法找到。请稍后再试。”
只是一个更新,这已经在另一台机器上测试过,并且这种确切的行为存在于IE中,但是如果您将默认浏览器更改为chrome,则首次打开链接。 – 2010-12-10 15:39:58