首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >MVC4 AntiForgery令牌cookie名称附加了随机字符串。

MVC4 AntiForgery令牌cookie名称附加了随机字符串。
EN

Stack Overflow用户
提问于 2013-08-12 20:48:35
回答 2查看 2.1K关注 0票数 3

我遇到了MVC4的问题。

代码语言:javascript
复制
@Html.AntiForgeryToken()

html助手在我的开发机器上,当我运行项目时,在检查报头(使用Fiddler)时,返回的令牌的名称是

代码语言:javascript
复制
__RequestVerificationToken

但是,当部署到IIS7.5版本(Windows2008Item)时,令牌名如下所示:

代码语言:javascript
复制
__RequestVerificationToken_L2V6b3JkZXI1

这个在哪里变的?是因为我的应用程序没有部署到IIS的“根文件夹”吗?我的应用程序被部署到

代码语言:javascript
复制
"http://myserver/myapp" instead of "http://myserver"
EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2013-08-12 20:56:07

在查看了源代码之后,我找到了答案:

代码语言:javascript
复制
http://aspnetwebstack.codeplex.com/SourceControl/latest#src/System.Web.WebPages/Helpers/AntiForgeryConfig.cs

是的,因为我的应用程序被部署到了一个路径中,下面的代码附加了编码的等价路径.希望这个发现能省去你的麻烦。

代码语言:javascript
复制
        // If the app path is provided, we're generating a cookie name rather than a field name, and the cookie names should
    // be unique so that a development server cookie and an IIS cookie - both running on localhost - don't stomp on
    // each other.
    internal static string GetAntiForgeryCookieName(string appPath)
    {
        if (String.IsNullOrEmpty(appPath) || appPath == "/")
        {
            return AntiForgeryTokenFieldName;
        }
        else
        {
            return AntiForgeryTokenFieldName + "_" + HttpServerUtility.UrlTokenEncode(Encoding.UTF8.GetBytes(appPath));
        }
    }
票数 9
EN

Stack Overflow用户

发布于 2019-11-19 06:28:02

通过使用下面的参考AntiForgeryConfig class.See可以很容易地解决这个问题。

https://learn.microsoft.com/en-us/dotnet/api/system.web.helpers.antiforgeryconfig?view=aspnet-webpages-3.2

代码语言:javascript
复制
Namespace:System.Web.Helpers

您需要在Application_Start()事件的Global.asax文件下添加下面的代码。

代码语言:javascript
复制
if (AntiForgeryConfig.CookieName.Contains("__RequestVerificationToken"))
            {
                AntiForgeryConfig.CookieName = "__RequestVerificationToken";
            } 
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/18196440

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档