xmlhttprequest XML有效负载

时间:2017-05-06 23:59:21

标签: javascript xml xmlhttprequest payload

我被要求使用xmlhttpRequest使用xml有效负载从站点检索数据。 给定XML:

<?xml version="1.0" encoding="UTF-8"?>
<TPRequest>
   <authentication>XXXXXXXXXX</authentication>
   <startSession>
      <attributes>
         <attribute>
            <name>CLIENT IP</name>
            <value>184.152.103.111</value>
         </attribute>
      </attributes>
   </startSession>
</TPRequest>

所以我建立了这样的东西,但没有太多运气。 它是第三方(供应商)服务器。 startSession id是第一步。 获得后,我就可以下载其他数据了。

<!DOCTYPE html>
<html lang="en">
<head><title>test handle response</title>
</head><body>Start........<br>
    <script>
        var xml = "" + 
                "{'authentication':'XXXXXXXXXX'"+
                ",'startSession':"+
                "{'attributes':"+
                "{'attribute':"+
                "{'name':'IP'"+
                ",'value':'184.152.103.111'}}}}";

        var xmlhttp = new XMLHttpRequest();
        xmlhttp.open('POST','https://www.fake.web/some_API.taf',true);

        xmlhttp.setRequestHeader('Content-type', 'application/xml');
        xmlhttp.setRequestHeader('Encoding','utf-8');
        xmlhttp.setRequestHeader('Access-Control-Allow-Origin','*')

        var xmlDoc;
            xmlhttp.onreadystatechange = function() {
                if (xmlhttp.readyState == 4 && xmlhttp.status == 200) {
                xmlDoc = xmlhttp.responseXML;
                console.log("xmlDoc: " +xmlDoc);
                }
                alert(xmlhttp.statusText);     console.log('Function Log:       readyState: '+ xmlhttp.readyState + '      status: '+     xmlhttp.status);
            };
        xmlhttp.send(xml);
    </script>
<BR>End....
</body>
</html>

我想要获得会话ID。

<?xml version="1.0" encoding="utf-8" ?>
<TPResponse>
<callStatus>success</callStatus>
<callMessage />
<startSession>
<responseStatus>success</responseStatus>
<responseMessage />
<sessionIdentifier>12345678-1234-5678-1234-567812345678</sessionIdentifier>
</startSession>
</TPResponse>

相反,这就是我得到的:

<?xml version="1.0" encoding="utf-8" ?>
<TPResponse mode="Unknown">
    <callStatus>6021</callStatus>
    <callMessage>Malformed Request. The request does not have the correct structure.</callMessage>
</TPResponse>

任何人都可以提出任何建议。我对XML和有效负载都很陌生。 任何建议都会被批评。

0 个答案:

没有答案