1

GET メソッドを使用すると、この応答を簡単に取得できます。しかし、POSTメソッドがわかりません。

  Ext.data.JsonP.request({
            url: 'http://otherdomain/test_json_post',
            method: 'POST',
            type:'jsonp',    
            scope: this,    
            callbackkey: 'callback',
            success: function(result) {
                console.log(result);
                //Your success function here...
            }
        });

何を間違えたの?

4

2 に答える 2

1

セキュリティ上の理由から、ブラウザから Web サービスを呼び出すことはできないため、アプリ側で JSONP プロキシを使用するか、サーバー側で CORS を有効にする必要があります。これをアプリとしてビルドする予定がある場合は、これを行う必要はありません。テスト時にブラウザーのセキュリティ設定を変更するだけで済みます。詳細はこちら:開発中にjsonプロキシを使用してリモートサービスにアクセスする方法

于 2013-06-19T08:32:32.140 に答える
0

はい、うまくいきました!^^ Sencha Touch はクライアント側 (モバイル Web アプリ) であるか、ローカルホストで構築されています。CORS (ブラウザー ポリシー セキュリティ) があり、その中で ajax を使用することに関連しています。そこで、2 つのコード行を追加して、PHP サーバーのすべての API を構成しました。

function yourAPI
{
    //CORS open
    header('Access-Control-Allow-Origin: *'); 
    header('Access-Control-Allow-Headers: X-Requested-With'); 
    ....
    {enter your code here}


}

ロブの助けに感謝します!同様の問題修正エラーが正常に発生することを願っています。

于 2013-06-20T03:15:28.203 に答える