我正在编写一个使用cookie来存储登录令牌的.NET应用程序。我希望用户能够在同一台服务器上登录此应用程序的多个安装(假设为jacob.local/Devel
和jacob.local/Stable
),因此我想适当地设置cookie的Path属性。目前我正在使用Request.ApplicationPath
,但是当用户使用与我在IIS中设置的案例不同的情况访问该网站时遇到了麻烦。
例如,用户访问jacob.local/stable
- Cookie的路径将为/Stable
,浏览器不会将其发回给我,因为它无法知道IIS不区分大小写。< / p>
我是否必须自己解析整个查询字符串,或者是否已经有一个函数来确定应用程序的路径是什么?
答案 0 :(得分:5)
以下技巧抓取应用程序路径,其外壳与当前请求的URL中指定的外壳匹配。
Request.Url.AbsolutePath.Remove(Request.ApplicationPath.Length)