简体   繁体   中英

How to Send an XML Data Stream via a HTTP Post Request

So I need to send an XML data stream via a http post request. I'm finishing my first app and trying to add an sms sending capability to it. I need to send an xml file like this:

<sms>
<user> <username>Leeroy</username> <password>Jenkins</password>
</user> <source>000</source>
<destinations>
<phone id="external id1">5xxxxxxxx</phone> <phone id="external id2">5xxxxxxxx</phone> <phone>5xxxxxxxx</phone>
<phone id="">5xxxxxxxx</phone>
</destinations>
<message>This is a message</message>
<timing>30/03/14 10:10</timing>
<response>0</response>
</sms>

to a http address: https://www.blablasms.cm/api

I'd like to send it as part of a click event, like this for example:

$('input').click(function () {
...
...
...
// make an http post request...

How can it be done? Can I do it with an ajax request? What would be a valid ajax request for that kind of use? Can I send the xml data as part of the url?

Thanks!

 var pathToPost = 'https://requestb.in/17x6jwi1'; // example path $.ajax({ method: 'POST', url: pathToPost, data: { user: { username: document.getElementsByTagName('username')[0].textContent, password: document.getElementsByTagName('password')[0].textContent, }, source: document.getElementsByTagName('source')[0].textContent, destinations: { phone1: document.getElementById('external_id1').textContent, phone2: document.getElementById('external_id2').textContent }, message: document.getElementsByTagName('message')[0].textContent, timing: document.getElementsByTagName('timing')[0].textContent, response: document.getElementsByTagName('response')[0].textContent } }).then(function(response) { // handle response });
 <script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> <sms> <user> <username>Leeroy</username> <password>Jenkins</password> </user> <source>000</source> <destinations> <phone id="external_id1">5xxxxxxxx</phone> <phone id="external_id2">5xxxxxxxx</phone> </destinations> <message>This is a message</message> <timing>30/03/14 10:10</timing> <response>0</response> </sms>

Here you are, tested and it works like a charm!

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM