ICode9

精准搜索请尝试: 精确搜索
首页 > 其他分享> 文章详细

在Visual Studio 2008中将Soap Header添加到Soap请求中

2019-12-10 16:06:08  阅读:311  来源: 互联网

标签:visual-studio-2008 asmx web-services c soap


我正在尝试使用第三方Web服务(因此我无权访问Web服务代码).
在Visual Studio 2008中,我创建了一个新的网站项目(ASP和c#),并添加了Web参考(不是Web服务!所以我猜它不是WCF服务…对吗?).

问题是,从Web服务的文档中,我知道每个肥皂请求都必须使用以下信封和标头发送,您能告诉我如何在我的肥皂请求中添加此消息吗?
我发现的所有解决方案都需要修改Web服务源或代理,我不能这样做,因为我无权访问Web服务源,并且Visual Studio 2008中客户端中的Web服务代理为只读.临时文件!

<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/" xmlns:wsu="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-utility-1.0.xsd">
<soap:Header>
<wsse:Security xmlns:wsse="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext-1.0.xsd" xmlns="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext-1.0.xsd" xmlns:env="http://schemas.xmlsoap.org/soap/envelope/" soap:mustUnderstand="1">
<wsse:UsernameToken xmlns:wsse="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext-1.0.xsd" xmlns="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext-1.0.xsd">
<wsse:Username>gimme.data@stats.com</wsse:Username>
<wsse:Password Type="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-username-token-profile-1.0#PasswordText">Ima5tatto</wsse:Password>
</wsse:UsernameToken>
</wsse:Security>
</soap:Header>
<soap:Body xmlns:ns2="http://neighbourhood.statistics.gov.uk/nde/v1-0/discoverystructs">
<ns2:AreaAtLevelElement>
<AreaIdWithLevelType>
<AreaId>276704</AreaId>
<LevelTypeId>12</LevelTypeId>
</AreaIdWithLevelType>
</ns2:AreaAtLevelElement>
</soap:Body>
</soap:Envelope>

解决方法:

您可以使用endpoint元素中的headers元素将标头静态添加到配置文件中的消息中. headers元素的每个子元素将照原样复制到邮件的标题中.

标签:visual-studio-2008,asmx,web-services,c,soap
来源: https://codeday.me/bug/20191210/2102827.html

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有