2012-03-04 153 views
1

我在Xcode 4.3中運行iPhone 5.0 Simulator。 PhoneGap 1.4.1已安裝。我有以下index.html文件中,類似於例子在http://wiki.phonegap.com/w/page/42450600/PhoneGap%20Ajax%20Sample401在PhoneGap iOS應用程序中未經授權的響應

<!DOCTYPE html> 
<html>  
    <head>   
     <title>PhoneGap Ajax Sample</title>   
     <script type="text/javascript" src="phonegap-1.4.1.js"></script>   
     <script> 
      function appReady(){         
       var ajax = new XMLHttpRequest();     
       ajax.open("GET","http://search.twitter.com/search.json?q=bacon",true);     
       ajax.onreadystatechange=function(){ 
        alert(ajax.readyState); 
        alert(ajax.status); 
        if(ajax.readyState==4 && (ajax.status==200)){ 
         document.getElementById('main').innerHTML = ajax.responseText; 
        } 
       }    
       ajax.send();     
      }    
      document.addEventListener("deviceready", appReady, false);    
      </script>   
    </head>  
    <body onload="onBodyLoad()">   
     <div id="main">    
      <p>before load</p>    
     </div   
    </body>  
</html> 

隨着調試警報()調用的地方,我看到對話框顯示2,然後401,然後如圖3所示,然後401,然後4 ,然後401.

401對話框當然表明該請求未經授權。我試過除twitter以外的網站,但沒有成功。我可以在模擬器上使用Safari瀏覽網頁。當我在Windows上的Eclipse中創建PhoneGap Android項目時,上面的代碼在我的Droid 2上按預期運行。我是iOS和PhoneGap開發的新手,所以我可能忽略了一些簡單的東西。有任何想法嗎?

順便說一句,關於這個問題有一個或兩個其他問題,但設置是不同的,例如一個使用OAuth。

回答

2

我只需要將search.twitter.com添加到PhoneGap.plist/ExternalHosts。

相關問題