我使用soap UI通过提供凭据来测试Web服务,但它始终显示“未授权”消息。请问任何人请告诉我为什么会这样?我想获得服务。
http://developer.rovicorp.com/docs
<soap:Envelope xmlns:soap="http://www.w3.org/2003/05/soap-envelope" xmlns:typ="http://api.rovicorp.com/v9/common/types" xmlns:lis="http://api.rovicorp.com/v9/listings">
<soap:Header>
<typ:AuthHeader>
<typ:UserName>username</typ:UserName>
<typ:Password>password</typ:Password>
</typ:AuthHeader>
</soap:Header>
<soap:Body>
<lis:GetServices>
<!--Optional:-->
<lis:request>
<!--Optional:-->
<typ:ClientBatchId>?</typ:ClientBatchId>
<lis:Locale>en-GB</lis:Locale>
<!--You have a CHOICE of the next 2 items at this level-->
<lis:ServiceSearch>
<!--Optional:-->
<lis:PostalCode>?</lis:PostalCode>
<!--Optional:-->
<lis:CountryCode>GB</lis:CountryCode>
<!--Optional:-->
<lis:MSOId>?</lis:MSOId>
</lis:ServiceSearch>
<lis:ServiceId>?</lis:ServiceId>
<lis:StartDate>2012-06-19</lis:StartDate>
<lis:Duration>263521</lis:Duration>
</lis:request>
</lis:GetServices>
</soap:Body>
</soap:Envelope>
答案 0 :(得分:4)
这很可能是因为您没有提供身份验证签名。如果您在Rovi门户中检查您的帐户,则会有与您的API密钥相关联的共享密钥。您可以通过md5计算您的apikey,共享密钥和纪元来计算签名。此链接应该对此有所帮助:http://prod-doc.rovicorp.com/mashery/index.php/Authentication-Code-Examples