当bundle在MVC4中注册时,什么负责“拦截”传入的http
要求/bundles/someBundle?v=1hDzBpmYJm4Iu-OjRN1YqS1WeNThVl0kStLJGP8WCr41
?
另外,由于每个捆绑包的哈希值仅计算一次(在第一个请求时),因此实际保存的哈希值在哪里, - 是否可以返回404
如果传入的哈希值不匹配
什么负责“拦截”传入的 http 请求 ~/bundles/someBundle
没有传入请求~/bundles/someBundle
。这是您正在使用的服务器端助手(Scripts.Render
)在服务器上(在相同的 HTTP 请求中)解释该值并在生成的 HTML 中吐出正确的 url。
另外,由于每个捆绑包的哈希值仅计算一次(在第一个请求时),因此实际保存在哪里,
实际的包内容存储在服务器端缓存中:HttpContext.Cache
。实际哈希值表示该内容的 SHA256 哈希值,每次使用时都会计算该哈希值Scripts.Render
helper.
UPDATE:
这是System.Web.Optimization.BundleModule http://msdn.microsoft.com/en-us/library/system.web.optimization.bundlemodule.aspx当您引用负责拦截对 url 的请求的 System.Web.Optimization 程序集时,它会自动注册/bundles/someBundle?v=1hDzBpmYJm4Iu-OjRN1YqS1WeNThVl0kStLJGP8WCr41
并返回实际内容。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)