2014-08-28 8 views
0

bootbox.dialog으로 로그인하고 싶습니다. 나는 다음과 같은 구문에서 HTML.Form 게시 : 내가 로그인 버튼을 클릭하면AntiForgeryToken 예외를 해결하는 방법

$.get("/account/ajaxlogin", function (data2) { 
bootbox.dialog({ 
     title: '<h4 style="color:white;">Login</h4>', 
     message: data2, 
     buttons: { 
     "success": { 
     "label": "Login", 
     "className": "btn-large btn-success", 
     "callback": function (e) { 
     var flag = false; 
     $.ajax({ 
      url: "/account/login", 
      data:$("form").serialize(), 
      type: "POST", 
      success: function (responseData) {}}); 

, 난 AntiForgeryToken 예외

The anti-forgery token could not be decrypted. If this application is hosted by a Web Farm or cluster, ensure that all machines are running the same version of ASP.NET Web Pages and that the &lt;machineKey&gt; configuration specifies explicit encryption and validation keys. AutoGenerate cannot be used in a cluster. 

내가 당신의 Web.config에 수동으로 컴퓨터 키 정의를 추가 취득을

<machineKey validationKey="40146620D52D81D5F0880209AC6F0C62D80686A5D1CC01E3AB1F75FA92B8DC775B0F97745973D9B69373111D6E7C5F4417B1212D7DD947BAE2AC4E2B10E8DECA" decryptionKey="D3231059079250E64E490418C8860435326DBD9946ABED2D9832E66D20F027AF" validation="SHA1" decryption="AES" /> 

나는 즉 다시 http://aspnetresources.com/tools/keycreator.aspx

+0

확인이 스레드 : http://stackoverflow.com/questions/14473597/include-antiforgerytoken-in-ajax-post-asp-net-mvc – ntl

+0

Tnaks을, 나는이 링크를 사용하지만, 난 다시 오류 . 데이터에'__RequestVerificationToken'이 있습니다. – Niloo

답변

0

며칠을 사용 동일한 문제로 인해, 내 페이지에 여러 개의 @Html.AntiForgeryToken() 코드가 있었기 때문에 해결했습니다. 내 페이지에 2 개가 있는데 두 번째 페이지를 제거하면이 오류가 사라졌습니다.

또는 ajax 호출로 데이터가있는 AntiForgeryToken을 보내보십시오.

data : { __RequestVerificationToken: $('input[name="__RequestVerificationToken"]').val() } 
+0

고마워,하지만 하나있다. – Niloo

+0

'AddAntiForgeryToken = function (data) {data .__ RequestVerificationToken = $ ('input [name = __ RequestVerificationToken]')을 사용합니다. 데이터를 반환합니다. }. '데이터하지만 난 오류가 다시 얻을 :( – Niloo

+0

내가 제거'@ Html.AntiForgeryToken()'내가 "'데이터가있는 부분에서, 나는 오류가 발생하지 않지만 사후 조치에 대해 null 값을 보내 __RequestVerificationToken = JSSX1QVs6z0Lr0409v4lebj_00w5UonDNaMxSQzM3L5_YmSi4XQ_5R5Y7f9sJ6KPBl28zvqCc9j0RSZIazMIvXbY4wQvddQGrg80zp_KBal922EUUUZCkep07gpl7ZvuxSVRKQ2 및 사용자 이름 = & Password = & UserName = arg & Password = 123456 "' – Niloo

관련 문제