2016-06-09 23 views
-2

這是我的URL請建議我如何獲得這個URL中的值,它是一個XML網關的SMS API的現在我必須執行它併發送給定的數字在URL URL建議我我已經嘗試了一切。來自url的php或jquery中的xml值

http://example.com/api/postsms.php?data=%3CMESSAGE%3E%0A%3CAUTHKEY%3EYour%20auth%20key%3C/AUTHKEY%3E%0A%3CSENDER%3ESenderID%3C/SENDER%3E%0A%3CROUTE%3ETemplate%3C/ROUTE%3E%0A%3CCAMPAIGN%3Ecampaign%20name%3C/CAMPAIGN%3E%0A%3CCOUNTRY%3Ecountry%20code%3C/COUNTRY%3E%0A%3CSMS%20TEXT%3D%22message1%22%3E%0A%3CADDRESS%20TO%3D%22number1%22%3E%3C/ADDRESS%3E%0A%3C/SMS%3E%0A%3C/MESSAGE%3E%0A 
+3

完全重複在這裏很好的解決:http://stackoverflow.com/questions/19491336/get-url-parameter-jquery-or-how-to -get-query-string-values-in-js –

回答

3

在JavaScript中,你可以使用decodeUri

var xml = decodeURI('%3CMESSAGE%3E%0A%3CAUTHKEY%3EYour%20auth%20key%3C/AUTHKEY%3E%0A%3CSENDER%3ESenderID%3C/SENDER%3E%0A%3CROUTE%3ETemplate%3C/ROUTE%3E%0A%3CCAMPAIGN%3Ecampaign%20name%3C/CAMPAIGN%3E%0A%3CCOUNTRY%3Ecountry%20code%3C/COUNTRY%3E%0A%3CSMS%20TEXT%3D%22message1%22%3E%0A%3CADDRESS%20TO%3D%22number1%22%3E%3C/ADDRESS%3E%0A%3C/SMS%3E%0A%3C/MESSAGE%3E%0A'); 

給你

<MESSAGE> 
    <AUTHKEY>Your auth key</AUTHKEY> 
    <SENDER>SenderID</SENDER> 
    <ROUTE>Template</ROUTE> 
    <CAMPAIGN>campaign name</CAMPAIGN> 
    <COUNTRY>country code</COUNTRY> 
    <SMS TEXT%3D"message1"> 
     <ADDRESS TO%3D"number1"></ADDRESS> 
    </SMS> 
</MESSAGE> 

正如你所看到的,文本編碼兩次。
您需要再次解碼。

var finalResult = decodeUriComponent(xml) // gives you 

<MESSAGE> 
    <AUTHKEY>Your auth key</AUTHKEY> 
    <SENDER>SenderID</SENDER> 
    <ROUTE>Template</ROUTE> 
    <CAMPAIGN>campaign name</CAMPAIGN> 
    <COUNTRY>country code</COUNTRY> 
    <SMS TEXT="message1"> 
     <ADDRESS TO="number1"></ADDRESS> 
    </SMS> 
</MESSAGE> 

這是現在有效的xml,可以使用jQuery解析。

$.parseXML(finalResult); 

另外

// to parse the complete url in chrome and mozilla 
var xmlString = new URLSearchParams('YOUR FULL URL HERE').values().next() 
+0

我無法看到xml結果我只得到這個「http://example.com/api/postsms.php?data=你的授權密鑰SenderID模板活動名稱國家代碼 「 –

+0

@arpit,您還需要提取url的數據組件。 JavaScript沒有本地方法來做到這一點。 http://stackoverflow.com/questions/901115/how-can-i-get-query-string-values-in-javascript我做了手動。如果你不關心IE,你可以試試這個:https://developer.mozilla.org/en-US/docs/Web/API/URLSearchParams – Jim