【发布时间】:2013-05-31 00:22:45
【问题描述】:
我有一个在 IIS 内的子应用程序中运行的 MVC 站点,该站点在初始加载后执行 Ajax 请求以获取其他内容。
问题在于,如果用户未能在 URL 末尾输入尾随“/”,则 AJAX 请求将失败,因为 XHR 对象在请求的 URL 前面添加了一个“/”。这导致它进入根域并离开应用程序区域。
下面是一个 Fiddler 跟踪显示我的意思。
前 3 个条目显示了一个基本的 HTML 站点,我设置该站点以查看 MVC 环境之外发生的情况。在这种情况下,如果未提供尾部“/”,IIS 将重定向到带有尾部斜杠的 URL。随后的 AJAX 请求就会成功。
在接下来的 2 个条目中,在 MVC 中,不会发出重定向,然后 AJAX 请求会失败。如果缺少尾随“/”,有没有办法在 MVC 场景中获得 301 重定向(最好来自 IIS)?
【问题讨论】:
标签: ajax asp.net-mvc iis