You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

调用SOAP WSDL接口时CURL请求需要添加哪些请求头?

问题原因

你收到的ActionNotSupported错误是因为SOAP请求缺少必填的SOAPAction头,基于.NET开发的SOAP服务端需要通过该头匹配对应的接口方法,你当前只配置了Content-Type头,所以服务端识别不出要调用的方法。

解决方法

修改请求头数组,添加对应方法的SOAPAction头即可,你调用的GetEnvios方法所属命名空间为http://tempuri.org/,对应SOAPAction值为http://tempuri.org/GetEnvios。

修改后的代码示例:

$headers = array(
    "Content-type: text/xml;charset=\"utf-8\"",
    "SOAPAction: \"http://tempuri.org/GetEnvios\""
);

额外排查建议

  • 确认代码中的$url变量和SOAP UI中使用的请求地址完全一致,不要遗漏.asmx/.svc这类服务后缀
  • 若修改后仍报错,可以查看SOAP UI发送的原始请求头,直接复用其中的SOAPAction值即可

内容的提问来源于stack exchange,提问作者Sergi Tomé

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.02 09:57:02