前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >服务器未能识别 HTTP 标头 SOAPAction 的值

服务器未能识别 HTTP 标头 SOAPAction 的值

作者头像
张善友
发布2018-01-19 16:17:46
3K0
发布2018-01-19 16:17:46
举报
文章被收录于专栏:张善友的专栏

SOAPAction HTTP request header被用来标识SOAP HTTP请求的目的地,其值是个URI地址。SOAP发送并不限制格式、URI特征或其必须可解析,那么在这种情况下,发送一个HTTP SOAP请求时,其HTTP客户端必须使用/指明SOAPAction HTTP request header。

SOAPAction header的内容可以被用在服务端,诸如:防火墙适当的过滤基于HTTP的SOAP请求消息等场景。SOAPAction header的值为空串("")表示SOAP消息的目的地由HTTP请求的URI标识;无值则表示没有指定这条消息的目的地。

跨平台调用Web Service出现:"服务器未能识别 HTTP 标头 SOAPAction 的值"的解决办法:

症状一:

Web Service + ASP.NET 应用程序部署到服务器默认目录中,在IE中用http://<服务器地址>/<程序目录名>/<默认启动页面名>发生“服务器未能识别 HTTP 标头 SOAPAction 的值”错误。

症状二:

在通过WCF 客户端ChannelFactory<> 上调用.NET Web Service的服务时,出现"服务器未能识别 HTTP 标头 SOAPAction 的值"。

解决对策:

给.NET的WebService类(即.asmx文件下的类)添加属性

代码语言:js
复制
[SoapDocumentService(RoutingStyle=SoapServiceRoutingStyle.RequestElement)]
    /// <summary>   
    /// Summary description for Service1    
    /// </summary>    
    [WebService(Namespace = "http://tempuri.org/")] 
    [WebServiceBinding(ConformsTo = WsiProfiles.BasicProfile1_1)]    
    [SoapDocumentService(RoutingStyle= SoapServiceRoutingStyle.RequestElement)]    
    [System.ComponentModel.ToolboxItem(false)]    
    // To allow this Web Service to be called from script, using ASP.NET AJAX, uncomment the following line.     
    // [System.Web.Script.Services.ScriptService]    
    public class SubmitFormTestService : System.Web.Services.WebService
本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2010-09-20 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档