SOAP,usernameToken问题

时间:2016-09-17 11:11:30

标签: web-services soap soap-client

并且需要知道一些事情,因为我从服务器获得内部错误,我认为这与我如何生成SOAP的Header端口有关。

以下是它的样子:

<soapenv:Header>

<wsse:Security soapenv:mustUnderstand="1" xmlns:wsse="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext-1.0.xsd" xmlns:wsu="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-utility-1.0.xsd">
<wsse:UsernameToken wsu:Id="UsernameToken-CA07017CE54cDFC14720230904344">

<wsse:Username>test</wsse:Username>

<wsse:Password Type="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-username-token-profile-1.0#PasswordText">******</wsse:Password>

<wsse:Nonce EncodingType="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-soap-message-security-1.0#Base64Binary">xgy3s2Owe4zUNGc/2t3twA==</wsse:Nonce>

<wsu:Created>2016-08-24T07:18:10.434Z</wsu:Created>

</wsse:UsernameToken>
</wsse:Security>
</soapenv:Header>
好的,所以: - 用户名是用户名:) - 密码是我看到的cleardText - Nonce我这样生成: var nonce = new Date()。getTime()* 1000; nonce = new Buffer(nonce.toString())。toString('base64'); (的NodeJS) - 并在样本中生成日期,如下所示。

我的问题: - UsernameToken ID:如何生成?必须提出这个吗?

如果我的SOAP请求看起来像这样,这样就可以了:

<soap:Header>
<wsse:UsernameToken>
<wsse:Password>1231231</<wsse:Password>
<wsse:Nonce>1232132131</wsse:Nonce>
<wsu:Created>2016-08-24T07:18:10.434Z</wsu:Created>
</wsse:UsernameToken>
</soap:Header>

或者我必须把所有的http内容都结束等吗?

非常感谢你! 米哈

0 个答案:

没有答案