相关疑难解决方法(0)

部署AntiforgeryToken错误

我正在使用IISExpress中内置的Visual Studio 2012在本地计算机上处​​理ASP.NET MVC应用程序.在取得重大进展后,我决定通过本地网络提供它,我从visual studio创建了一个虚拟目录.我可以登录,但是当我尝试注册新用户时.我收到以下错误.

防伪令牌无法解密.如果此应用程序由Web场或群集托管,请确保所有计算机都运行相同版本的ASP.NET网页,并且配置指定显式​​加密和验证密钥.AutoGenerate不能在群集中使用.

我从(ASPNET资源)生成了一个新的机器密钥并将其放在我的配置文件中,但仍然没有工作.有人建议解决方案吗?

asp.net-mvc web-config antiforgerytoken

18
推荐指数
2
解决办法
2万
查看次数

如何通过 Ajax 文件上传发送防伪令牌?

我正在尝试使用 ajax 调用上传文件并验证防伪令牌。我环顾四周并构建了一种方法来验证控制器上的防伪令牌。但是,每当我@Html.AntiForgeryToken查看时,我的文件都不会填充。即使它验证了防伪令牌。它似乎没有随请求一起发送,但我不确定为什么。

ajaxSendOverride:

$(document).ready(function () {

    var securityToken = $('[name=__RequestVerificationToken]').val();

    $(document).ajaxSend(function (event, request, opt) {
        if (opt.hasContent && securityToken) {   // handle all verbs with content

            var tokenParam = "__RequestVerificationToken=" + encodeURIComponent(securityToken);

            opt.data = opt.data ? [opt.data, tokenParam].join("&") : tokenParam;

            // ensure Content-Type header is present!
            if (opt.contentType !== false || typeof event.contentType !== 'undefined') {
                request.setRequestHeader("Content-Type", opt.contentType);
            }
        }
    });
});
Run Code Online (Sandbox Code Playgroud)

阿贾克斯:

$(document).on("submit", "[data-upload-contract-form]", function (e) {
        e.preventDefault();
        var formData = new FormData($('[data-upload-contract-form]')[0]);
        if ($('[data-upload-file]').val() != …
Run Code Online (Sandbox Code Playgroud)

c# ajax jquery antiforgerytoken

4
推荐指数
1
解决办法
2234
查看次数

标签 统计

antiforgerytoken ×2

ajax ×1

asp.net-mvc ×1

c# ×1

jquery ×1

web-config ×1