编辑:如果我在MVC中通过完全标准的方式提供文件,这仍然会发生.
每次请求我的图片时,Google Chrome也会搜索我的favicon.ico.
为了避免不必要的讨论其他事情“我也应该关心”,让我们假设我不关心缓存在这个例子,我将永远返回HTTP响应200与该文件.
在我的控制器中,我返回以下内容:
return File(fileBytes,contentType);
检查fiddler 2后,会产生以下响应:
HTTP/1.1 200 OK
Cache-Control: public
Content-Type: image/gif
ETag: oYu19wKo+KEHkyxZQ2WXAA==
Server: Microsoft-IIS/7.0
X-AspNetMvc-Version: 1.0
X-AspNet-Version: 2.0.50727
X-Powered-By: ASP.NET
Date: Tue,16 Jun 2009 18:48:45 GMT
Content-Length: 29344
相比之下,当我要求(首次)Google徽标时,这是Google在fiddler中的回应:
HTTP/1.1 200 OK
Content-Type: image/gif
Last-Modified: Wed,07 Jun 2006 19:42:34 GMT
Date: Tue,16 Jun 2009 18:50:54 GMT
Expires: Wed,16 Jun 2010 18:50:54 GMT
Cache-Control: public,max-age=31536000
Server: gws
Content-Length: 8706
Age: 2
但是,在Chrome中找到我的形象之后,Chrome试图找到我的favicon.ico.请求Google徽标后不要尝试.
有什么想法可能会发生吗?从我对HTML的理解,答案必须在响应标题中,因为这是所有的客户端都要继续吗?请纠正我!
编辑2:好像很多人完全误解了这个问题.问题不在于MVC中缺少一个图标和错误的请求 – 这是当一个图像正在加载时请求一个图标的问题,内容类型为“IMAGE / JPEG”,而不是具有内容的网页“TEXT / HTML”的类型!
解决方法
原文地址:https://www.jb51.cc/aspnet/246621.html
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。