如何区分SoapExtension的不同请求?

本文探讨了在SOAP协议中为每个请求分配唯一加密密钥的技术难题。作者尝试通过客户端的SOAPMessage头部添加信息来实现这一目标,但遇到了服务端无法正确读取的问题。

为了达到一种好的加密效果,我希望每一个请求都有自己的加密键,意思是每一个请求的加密的key是不同的。在SoapExtension内似乎没有办法区分不同的请求者。原希望在客户端通过SoapMessage的头能传递一些信息,无奈服务端的SoapMessage的Header.Count一直等于0.

ContractedBlock.gifExpandedBlockStart.gifCode
public override void ProcessMessage(SoapMessage message)
{           
    
switch (message.Stage)
    {
        
case SoapMessageStage.BeforeSerialize:                  
            ConnectSoapHeader header 
= new ConnectSoapHeader();
            header.ActionName 
= "ConnectTest";
            message.Headers.Add(header);
            
break;
//客户端其他代码
    }
}

想通过Request.Header,没发现生成的代理类有什么可用的。似乎Remoting还有信道的IMessage可增加类似东西。唉...

转载于:https://www.cnblogs.com/kevin-Y/archive/2009/07/03/1516044.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值