使用$ .ajax调用Web方法时,身份validation失败错误
当我进行JQuery调用时,我收到一个身份validation失败的响应:
{ Message: "Authentication failed.", StackTrace: null, ExceptionType: "System.InvalidOperationException" }
jQuery调用:
$(document).ready(function () { //Handle the change event for the drop down list $("#ddRegions").change(function () { //create the ajax request $.ajax({ type: "POST", //HTTP method url: '', //page/method name data: "{}", //json to represent argument contentType: "application/json; charset=utf-8", dataType: "json", success: function (msg) { //handle the callback to handle response //request was successful. so Retrieve the values in the response. alert(msg.toSource()); } }); }); });
网络方法:
public static string getLocations() { System.Diagnostics.Debug.WriteLine("Getting Locations."); return "{region:auckland, city:auckland}"; }
我在web.config中添加了以下内容:
我尝试在AutoRedirectMode
设置为Off
。 这样可以阻止错误,但仍然无法调用Web方法。 有什么建议?
通过在App_Start / RouteConfig.cs中将AutoDirectMode设置为Off来解决
settings.AutoRedirectMode = RedirectMode.Off;
并将ScriptManager添加到将EnablePageMethods设置为“true”的aspx页面: