.NET下面的web service开发,如何读取SOAP头里面的信息?
展开全部
自己设置啊。你是服务端。所以要自己写。
在我的例子中,主要是简单的定义一个SoapHeader,并且在客户端和Webservice中使用。
场景描述:
用户在文本框中输入用户名和密码,点击提交按钮去调用一个webservice的方法来处理。在客户端发送请求的时候,用户名和密码的信息保存在soapheader中。webservice方法进行处理的时候,通过从soapheader中取出用户名和方法进行处理。
1、SoapHeader类的定义
using System.Web.Services.Protocols;
class MySoapHeader:SoapHeader
{
public string userName;
public string password;
}
2.webservice 中使用soapheader
定义一个webservice,命名为FirstService.asmx(使用自动生成的就可以了,修改一下HelloWord方法)
public class FirstService : System.Web.Services.WebService {
public FirstService () {
//如果使用设计的组件,请取消注释以下行
//InitializeComponent();
}
//声明一个MySoapHeader
public MySoapHeader mySoapHeader;
[WebMethod]
[SoapHeader("mySoapHeader")]
public string HelloWorld() {
if (mySoapHeader.userName == "vicky")
{
return "ok";
}
return "error";
}
public MySoapHeader header;
[SoapHeader("header", Direction = SoapHeaderDirection.In)]
[WebMethod]
public string CheckHeader()
在我的例子中,主要是简单的定义一个SoapHeader,并且在客户端和Webservice中使用。
场景描述:
用户在文本框中输入用户名和密码,点击提交按钮去调用一个webservice的方法来处理。在客户端发送请求的时候,用户名和密码的信息保存在soapheader中。webservice方法进行处理的时候,通过从soapheader中取出用户名和方法进行处理。
1、SoapHeader类的定义
using System.Web.Services.Protocols;
class MySoapHeader:SoapHeader
{
public string userName;
public string password;
}
2.webservice 中使用soapheader
定义一个webservice,命名为FirstService.asmx(使用自动生成的就可以了,修改一下HelloWord方法)
public class FirstService : System.Web.Services.WebService {
public FirstService () {
//如果使用设计的组件,请取消注释以下行
//InitializeComponent();
}
//声明一个MySoapHeader
public MySoapHeader mySoapHeader;
[WebMethod]
[SoapHeader("mySoapHeader")]
public string HelloWorld() {
if (mySoapHeader.userName == "vicky")
{
return "ok";
}
return "error";
}
public MySoapHeader header;
[SoapHeader("header", Direction = SoapHeaderDirection.In)]
[WebMethod]
public string CheckHeader()
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询