0

我们目前正在部署一个 MVC 应用程序,该应用程序还需要支持许多由于公司政策而阻止 cookie 的客户端。我们将无 cookie 会话和身份验证设置为自动检测,因为我们发现 cookieless="UseDeviceProfile" 是完全不可靠的,因为我们必须支持多个浏览器并且 Chrome(以及 IE9)使用此设置 (UseDeviceProfile) 会出错。除了一个实例外,一切都适用于“自动检测”设置:

如果用户在http://somehost.com中阻止 cookie 和类型,则ASP.Net 将 ?AspAutoDetectCookieSupport=1 添加到字符串的末尾,从而为您留下http://somehost.com?AspAutoDetectCookieSupport=1的 URL 。当这个字符串进入我们的 MVC 应用程序时,它会出现 404 错误。但是,如果您在初始 url 的末尾附加一个“/”,如 http://somehost.com/,那么一切都会按预期工作,并且 ASP.Net 会在 url 前面加上会话字符串(例如http:// somehost.com/(sessionstring)/ ......

这将是一种边缘情况,因为绝大多数用户将通过我们发送给他们的 URL 访问应用程序,而该 URL 不易受此“错误”的影响。此外,绝大多数用户也将启用 cookie。但是我们仍然不希望即使是少数用户也会看到这个丑陋的错误。

有什么建议么?

4

0 回答 0