2016-06-09 2 views
-2

여기 내 URL이 URL에 값을 가져올 수있는 방법을 알려주십시오. 이제는 SMS 게이트웨이의 XML API를 구현하여 URL의 주어진 번호에 SMS를 보내야합니다. 나는 모든 것을 시험해 보았다.PHP 또는 jquery의 URL에서 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

자바 스크립트에서, 당신은 단지 텍스트를 두 번 인코딩, 당신이 볼 수 있듯이 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 템플릿 캠페인 이름 국가 code " –

+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

관련 문제