401 несанкционированный ответ в приложении PhoneGap для iOS - PullRequest
1 голос
/ 05 марта 2012

Я использую симулятор iPhone 5.0 в Xcode 4.3.PhoneGap 1.4.1 установлен.У меня есть следующий файл index.html, похожий на пример в http://wiki.phonegap.com/w/page/42450600/PhoneGap%20Ajax%20Sample:

<!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>

С вызовами debugging alert () на месте, я вижу диалоги, показывающие 2, затем 401, затем 3, затем 401, затем 4, затем 401.

Диалоги 401, конечно, указывают, что запрос не авторизован.Я пробовал сайты, кроме твиттера, но безуспешно.Я могу использовать Safari на симуляторе для просмотра веб-страниц.Приведенный выше код работает, как и ожидалось, на моем Droid 2, когда я создаю проект PhoneGap Android в Eclipse в Windows.Я новичок в разработке для iOS и PhoneGap, так что я могу упустить что-то простое.Любые идеи?

Кстати, есть еще один или два вопроса на SO по этому поводу, но настройки разные, например, один из них использовал OAuth.

1 Ответ

2 голосов
/ 05 марта 2012

Мне просто нужно было добавить search.twitter.com в PhoneGap.plist / ExternalHosts.

...