2016-08-11 42 views
1

我正在使用全球氣象API。特殊字符在通過API時被加密

<!DOCTYPE html> 
<html> 
<head> 
    <title></title> 
    <meta charset="utf-8" /> 
    <script src="http://ajax.aspnetcdn.com/ajax/jQuery/jquery-2.0.3.min.js"></script> 

    <script type="text/javascript"> 

     $(document).ready(function() { 
      alert("success1"); 

      $('#ClickData').click(function() { 
       var CountryDetails = "524901&APPID=3a93f181f74c615547db27a418662aa4"; 
       //$('#TextCountry').val() 
       var Pdata = $('#DataArea').val(); 
       alert(CountryDetails); 
       $.ajax({ 
        //524901&APPID=e962f6f0d29167e22903aaa90e72203f 
        url: 'http://api.openweathermap.org/data/2.5/forecast/city', 
        method: 'get', 
        data: { id: CountryDetails }, 
        dataType: 'json', 
        success: 
         function (Final) 
         { 
          if (Final.weather[0].message != null) 
          { 
           Pdata.html(Final.weather[0].message); 
           alert("success3"); 
          } 
           //alert("success"); 
          else 
          { 
           alert("success5"); 
           Pdata.html(Final.weather[0].main + '<br\>' + Final.weather[0].description); 
          } 
        } 
       }); 
      }); 
     }); 
    </script> 
</head> 
<body> 
    Country <input type="text" id="TextCountry" /> 
    <input type="button" value="Click" id="ClickData" /><br /><br /> 

    <p id="DataArea"></p> 
</body> 
</html> 

當我經過的AppKey ID(這是需要獲得訪問網絡API。這裏的問題是我傳遞「http://api.openweathermap.org/data/2.5/forecast/city?id=524901&APPID=3a93f181f74c615547db27a418662aa4」數據,該API,而其中調用特殊字符像「&」 &「=」越來越加密這樣的「http://api.openweathermap.org/data/2.5/forecast/city?id=524901%26APPID%3D3a93f181f74c615547db27a418662aa4

請幫我在這方面是如何處理這種情況。

回答

0

AJAX請求是SE只有一個參數id並轉義具有特殊含義的字符,=&。您需要分別傳遞查詢參數。

例如:

$.ajax({ 
    url: 'http://api.openweathermap.org/data/2.5/forecast/city', 
    method: 'get', 
    data: { 
     id: '524901', 
     APPID: 'e962f6f0d29167e22903aaa90e72203' 
    }, 
    dataType: 'json', 
    // etc 
}); 
+0

感謝Phuzi ... –

+0

你能接受的答案,如果它解決您的問題?謝謝 – phuzi