2012-01-06 8 views
1

OS6とOS7デバイスで私のアプリケーションをテストしましたが、どちらもうまくいきました。しかし数日前、私はOS5デバイスに関する問題に直面しました。すべてのAjaxリクエストは機能しませんでした。いくつかのグーグルの後で、私はOS5では、ajaxが無効になっていることが分かった。それはとても奇妙です、私のアプリはOS5デバイスで動作する必要がありますが、私はAjaxを呼び出すことはできません。Phonegapブラックベリー5のクロスドメイン通信

この問題を解決するために、古いクロスドメインメソッドを検索し、「動的スクリプト」と「IFrame」メソッドが見つかりました。ここの記事は、それらを説明している:

http://www.openjs.com/articles/ajax/transfer_methods_xmlhttprequest_alternatives.php

しかし、私は非のXMLHttpRequestまたは非ActiveXの方法についての例を持っていません。これらの方法に関する実例を持っている人はいますか?私はXMLの応答を私に送信するサーバー上のJSPファイルがあります。

実例は私にとても感謝します。

ありがとうございます。

[EDIT]

私はクロス側通信へのIFrameを使用することにしましたが、iFrameの内容を取得することができない、私のコードは、そのようなものです:

function onIFrameLoad(i) { 
    var response; 
    if(i.contentDocument){ 
     response = i.contentDocument; // For NS6 
    }else if(i.contentWindow){ 
     response = i.contentWindow.document; // For IE5.5 and IE6 
    } 
    var parser = new PListParser(); 
    var result = parser.parsePList(response); 
    .... 
} 

<iframe id="iFrame" onload="onIFrameLoad(this);" src="[a url]"></iframe> 

リップルエミュレータではうまく動作しますが、実際のデバイス(os5)では動作しません。

答えて

0

データを取得しているサーバーにアクセスできますか?もしそうなら、JSONPとしてデータを取得するように設定することもできます。

関連する問題