ajax 405跳转错误页面,jQuery AJAX帖子收到405错误(HTTP动词POST不允许)

我有以下jQuery发布到ASP.NET webmethod:

$.ajax({

type: "POST",url: "AjaxWebMethods.aspx/UpdNote",contentType: "application/json; charset=utf-8",data: "{'ID' : '" + id + "','note' : '" + note + "' }",dataType: "json",success: UpdNote_Success,error: AjaxError

});

Web方法被声明:

[System.Web.Services.WebMethod(enableSession: true)]

public static int UpdNote(int ID,string note) {

// business logic that eventually returns a number,but simplifying

// ... for the sake of brevity

int retNum = 99;

return retNum;

}

jQuery文章和Web方法在Windows Authenticated环境中都很好用(即 – 用户通过LDAP进行身份验证).然而,我最近不得不将该网站移动到使用RSA(双因素身份验证,引脚和令牌代码)的服务器,以验证用户以访问该网站.我现在看到的是,我所有的jQuery帖子都返回“405错误”.

显然,跨站点的请求,但是这里没有一个.所有jQuery AJAX帖子都使用在AjaxWebMethods.aspx中声明的Web方法,该页面驻留在站点自己的域中.

提前感谢任何帮助或建议!

编辑:

在IE8中使用Fiddler给我一些更多的信息.它返回的错误代码仍然是405,但服务器错误更具描述性.服务器错误是“不允许用于访问路径的HTTP动词POST”/AjaxWebMethods.aspx/UpdNote“.

我确实尝试将ajax请求的type参数更改为GET,但是我得到一个404(不能找到该资源).

另外,忘了提到这是通过SSL(虽然我不期望这会有所作为).

编辑:

经过广泛的测试(并从Stackoverflow的精明成员的广泛的帮助),我已经确定405错误与网站正在使用的应用程序池直接相关,更具体地说,涉及到为应用程序池选择的管理流水线模式.

如果我使用一个针对v4.0(.NET Framework)和集成(管理管道模式)的应用程序池,那么我的AJAX帖子工作正常.但是,如果我使用的目标是v4.0和经典(管理管道模式)的应用程序池,那么我得到405错误.

所以在这一点上,我仍然在寻找一个解决这个问题的解决方案,尽管我已经能够回到这个问题.

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值