当前位置: 首页 > 面试题库 >

CORS 405(不允许使用方法)

滕令雪
2023-03-14
问题内容

我打算使用Ajax将跨域请求发送到soap
Web服务。Web服务的URL是:http://example1.asmx?op =
GetVOD

我的代码:

var url = 'http://example1.asmx?op=GetVOD';
var xhr = new XMLHttpRequest();
var strRequest = "<?xml version='1.0' encoding='utf-8'?>" +
"<soap:Envelope xmlns:xsi='http://www.w3.org/2001/XMLSchema-instance' xmlns:xsd='http://www.w3.org/2001/XMLSchema' xmlns:soap='http://schemas.xmlsoap.org/soap/envelope/'>" +
  "<soap:Body>" +
    "<getVODTypeList xmlns='http://tv21.com/' />" + 
  "</soap:Body>" +
"</soap:Envelope>"
xhr.open('POST', url, true);
xhr.setRequestHeader("Content-Type", "text/xml; charset=utf-8");
xhr.setRequestHeader("SOAPAction", "http://tv21.com/getVOD");
xhr.send(strRequest);

在IIS 7服务器端,我已经将这些行添加到文件web.config中

<add name="Access-Control-Allow-Origin" value="*" />
<add name="Access-Control-Allow-Methods" value="GET,PUT,POST,DELETE,OPTIONS" />
<add name="Access-Control-Allow-Headers" value="Content-Type" />

当我在Chrome上运行客户端代码时,出现405错误:

http://example1.asmx?op=GetVOD 405 (Method Not Allowed)
http://example1.asmx?op=GetVOD Invalid HTTP status code 405

有谁知道如何解决这个问题?

预先感谢


问题答案:

听起来像Web DAV正在阻碍。这是删除它的配置:

http://brockallen.com/2012/10/18/cors-iis-and-
webdav/



 类似资料:
  • 我正在尝试使用angularJs和$http发布一个表单。post方法。但每当我执行此函数时,它都会给我以下错误:加载资源失败:服务器响应状态为405(不允许使用方法),我不知道该怎么办。(Im使用visual studio 2015)

  • 我有一个restcontroller和post方法,带有以下url和json请求。http://server/member/sc/v1/limited-liability/medicare 使用post方法和json请求在本地触发请求时,获得正确的响应。但在docker中以spring boot应用程序的形式运行会将异常作为不允许的方法抛出。最初,我将这个docker服务部署为put方法。现在我转

  • 我有以下发帖方法, 我正在使用fiddler发布以下请求, 注意:还没有为spring配置安全性。

  • 问题内容: 我刚刚开始学习Flask,并且我正在尝试创建一种允许POST方法的表单。 这是我的方法: 而我的: 加载表单(在收到GET时将其呈现)可以正常工作。但是,当我单击“ 提交”按钮时,出现一个。 为什么不显示“ Hello”? 问题答案: 除非存在输入错误,否则你的表单将提交给路由方法,除非你输入错误,否则应调整表单的属性以指向视图

  • 我试图让当前的Spring应用程序与WebSphere7默认JMS提供程序一起工作。我已经创建了一个总线,并用它分配了一个队列,还有一个SIB QueueConnectionFactory、一个SIB队列和一个激活规范,并将其与SIB队列链接起来。我确信应用服务器的消息引擎已启动。 这就是我的网络。xml来引用JNDI资源 当我启动应用程序时,它会给我: 是应用程序从WS中引用的队列: 而那应该是

  • 我得到了405请求方法'GET'在app engine的文件上传过程中不受支持,但在我的本地沙箱中相同的代码运行正常 看起来像bbloservice回调请求应该是POST类型后POST/_ah/上载/...但是当我用Firebug看的时候,它是一个带有以下头的GET请求,我确实在@Controller类中定义了请求处理程序,该类具有方法类型请求方法。POST 标题 响应Headersview源允许