许多的公司都有自己的web服务来支撑自己系统内的运营逻辑,并且是非公开的,那么如何对自己的web服务进行验证呢?不可能任何一个知道你的webservice url 的人都可以去调用你的服务,那企业内部那么多数据岂不全被剽窃?我在这开头只是言明web服务验证的重要性,接下来,我将从比较基础的讲起如何使用soapheader来验证。
首先,我们来讲讲什么是soapheader。soap协议是啥我就不好讲了,如果读者还没有明白soap是啥,那阅读这篇文章对你没有用处。soap是由 一个信封,envelop ,一个header,一个body以xml的格式组织而成。请看如下的soap格式,你就明白soap的组成。
<?xml version="1.0" encoding="utf-8"?>
//这个就是soap的信封,也是soap协议的根节点。
<soap:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
这个就是头了,注意看头里面的信息,下面会提到。
<soap:Header>
<UserAuthenticationKey xmlns="http://www.com/UFAService/">
<key>string</key>
</UserAuthenticationKey>
</soap:Header>
//这个就是soap协议的体了。这个是你请求这个web方法所带进来的参数,入参。并且表明这些参数的性质,如果是枚举,还会挨个列举出来哦
<soap:Body>
//这个请求的是Search这个web方法,
<Search xmlns="http://www.com/UFAService/">
<PartnerCD>int</P