0

投稿の最初のバージョンで十分に正確でなくて申し訳ありません/ここにサンプルコードを含む更新された投稿があります

私はjquery 1.6.4とjquery mobile 1.0rc2を使用しています/私はjquery mobileに比較的慣れていないことを最初に認めなければなりません/まだ大きな問題なく動作するいくつかのWebアプリを構築しました/突然1秒から次へ壊れた/問題を詳しく調べたいくつかのアプリは、ajax jsonp リクエストによって取得した API から json を取り込むすべてのアプリ/ get url に ? の後に 2 つのパラメーターが含まれていることが明らかになりました。?auth_token & meta_prefix (および自動生成された jquery コールバック パラメーター)/ 問題は、jquery が 2 番目のパラメーターを渡さなくなったことにあるようです/リクエストを送信する前にそれを削除しただけです/これはすべての壊れた Web アプリに当てはまります/何が変わったのでしょうか?

リクエストの URL は次のようになります: http://myURL?auth_token=myToken&meta_prefix=m_ ただし、送信される URL は次のようになります: http://myURL?auth_token=myToken&callback=jQuery16308668286966791752_1322474687995

奇妙なことに、パラメーター名を meta_prefix ではなく metaprefix に変更すると、それが送信されますが、今回はコールバックの後にパラメーターが配置されます。ここで何が起こっているのですか?

どんな助けでも大歓迎です

以下は、私が呼び出しに使用しているコードです

$(function(){
    $.ajax({
        url: 'http://myURL?auth_token=myToken&meta_prefix=m_',
        dataType: 'jsonp',
        cache: true, // i need this to be set to true because otherwise jquery adds a cache parameter which the api i am using has problems with
        success: function(data){
            console.log(data);
            $('#list1').append('<ul data-role="listview"></ul>');
            listItems = $('#list1').find('ul');
            $.each(data, function(key) {
                html += '<p>From: '+data.array[key].m_total_resources+'</p>';
                listItems.append('<li>'+html+'</li>');
            });
            // Need to refresh list after AJAX call
            $('#list1 ul').listview();
        }
    });
})

私はこの問題をもう少しいじっていました.その2番目のパラメーターの問題を再現するには/おそらくそれは私の理解不足ですが、APIはこのエラーで役割を果たすことができますか? またはパラメータが追加されるURL?ブラウザにURLを入力すると、期待どおりの応答が得られます。非常にイライラするのは、昨日まですべてがうまく機能していたことです

乾杯

マック

4

1 に答える 1

0

ご不便をおかけして申し訳ありませんが、2 つのアカウントを作成したことを認識していませんでした/上記で報告した問題は解決しました/実際には API の問題でした/API が特定のパラメーターに応答しなくなる ajax 関数を実装したとのことです/正直に言うと、私はそれについて少し混乱していました/Firefoxのライブhttpheadersプラグインで見ることができるのは、実際に送信された取得リクエストを示していると思いました/しかし、私が抱えていた問題に基づいて、それはもっとあるようです送信された応答APIは何ですか/それは何らかの方法で正しいですか?

于 2011-11-29T19:16:51.523 に答える