使用 jQuery 发布到 ASMX 时出现 405 错误?

Posted

技术标签:

【中文标题】使用 jQuery 发布到 ASMX 时出现 405 错误?【英文标题】:405 error when POSTing to ASMX using jQuery? 【发布时间】:2013-11-04 23:49:51 【问题描述】:

Site is here.

我们尝试过的事情:

ProtocolSupportModule 已更新为所有动词。

DNS 在外部可见。

启用匿名身份验证。

已添加标题:

http://s-alg.cengage.com" />

我不确定接下来要尝试什么。希望与 Web.config 有关。

【问题讨论】:

【参考方案1】:

该方法必须用 [WebInvoke] 修饰才能启用 POST 方法。

[WebInvoke(Method = "POST", ResponseFormat = WebMessageFormat.Json, BodyStyle = WebMessageBodyStyle.WrappedRequest)]

更新:

如果是asmx,在web.config中包含以下协议

<webServices>
    <protocols>
        <add name="HttpGet"/>
        <add name="HttpPost"/>
    </protocols>
</webServices>

在 system.web 中

另外,用 [scriptmethod] 装饰 web 方法,以便从脚本访问

【讨论】:

我也应该启用“OPTIONS”吗?这似乎是要发送的内容。 这是一个跨域请求吗?如果没有,我认为不必启用选项。此外,您的标题显示 WCF,如屏幕截图所示,ASMX.. 是 asmx 吗? 哎呀,猜它的 asmx。是的,它是跨域的。

以上是关于使用 jQuery 发布到 ASMX 时出现 405 错误?的主要内容,如果未能解决你的问题,请参考以下文章

访问asmx Web服务时出现错误请求

从 ASMX Web 服务导入 wsdl 时出现 WsdlImporter 错误

从 Java 应用程序调用 https://outlook.office365.com/EWS/Exchange.asmx 时出现随机 SSLHandshakeException

将jQuery数据表绑定到gridview时出现异常

将 JSON 数据从 JQuery 发送到 WCF REST 方法时出现问题

调用 web 服务时出现 FileNotFoundException