xhr с телефонной пробкой на ежевике - PullRequest
3 голосов
/ 21 июля 2010

Я пытаюсь отправить xhr, используя phonegap на blackberry.В настоящее время, когда я делаю запрос, он молчит.Я пытался использовать jQuery jQuery.getJSON(url , callback),

объект xhr

var xmlhttp = new XMLHttpRequest();

//callback function when XMLHttpRequest is ready
xmlhttp.onreadystatechange=function(){
    if(xmlhttp.readyState==4){
        if(xmlhttpForTGT.status==200){

            response = xmlhttpForTGT.getResponseText()
        }
        else{
            alert("Request Failed")
        }
    } 
}

xmlhttp.open("GET", url , true)
xmlhttp.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded')
xmlhttp.send()

и xui

x$('#home').xhr(url, 
    {method: 'get',
    callback: function(){ alert('made request') }});

, и пока я не могу получить ни одного из нихработать.Кто-нибудь еще смог заставить xhr работать?Я использую JRE4.6.1 и использую eclipse для среды разработки.Нет ошибок, когда я пытаюсь сделать запросы, какие-либо советы?

1 Ответ

2 голосов
/ 21 июля 2010

Я много сделал для проекта phonegap-blackberry, и во всех моих тестах по какой-то причине объект XmlHttpRequest всегда вызывает пустое исключение при вызове для него функции open ().Я не уверен, почему - phonegap-blackberry в его нынешнем виде использует собственный браузер RIM, не относящийся к WebKit, так что, возможно, это как-то связано с этим.родной, основанный на Java подход к выполнению HTTP-запросов и получению ответа.Он подключен к JavaScript в вашем приложении PhoneGap как часть «сетевого» PhoneGap API.Некоторая информация об этом здесь: http://wiki.phonegap.com/Known-issues-(BlackBerry)

ПРИМЕЧАНИЕ: это, безусловно, мера временного ограничения.Реализация грубая и может определенно использовать некоторую работу.В настоящее время он работает только с конечными точками API, которые возвращают JSON.

Пример использования:

navigator.network.XHR('http://www.mysite.com/myapi',
    'This is my POST data, or I could pass in "null" for empty POST data',
    function(response) {
        // This is my success callback.
        // Do something with the JSON response object here.
    });

Надеюсь, это поможет.

...