1

このリクエストの何が問題なのかわかりませんが、ここで何が起こっているのか..

ブラウザーはクロスドメイン リクエストを行っていると認識しているようですが、リクエストの送信元と同じページにリクエストを送信しています。

search という関数を呼び出すと、これが Google Chrome 開発コンソールに返されます

編集:

jquery-1.0.2.min.jsをロードすると同じことが起こり
ますサーバーはこれを返します: {"readyState":4,"status":404,"statusText":"error"}

Bad request                                               search.js?1383509337:48
POST http://example.com/transaction/search   jquery-2.0.3.js:7845
x.support.cors.e.crossDomain.send                         jquery-2.0.3.js:7845
x.extend.ajax                                             jquery-2.0.3.js:7301
search                                                    search.js?1383509337:22
(anonymous function)                                      search.js?1383422028:17
x.event.dispatch                                          jquery-2.0.3.js:4676
y.handle                                                  jquery-2.0.3.js:4360

関数検索()

function search(user, transactionDate, vendorField, amountField, accountField, departmentField, subDepartmentField, statusField, projectidField){

    var url = "/transaction/search";
    var ajax = jQuery.ajax({
        type: 'POST',
        dataType: 'json',
        url: url,
        data: {
            user: user,
            transactionDate: transactionDate,
            vendorField: vendorField,
            amountField: amountField,
            accountField: accountField,
            departmentField: departmentField,
            subDepartmentField: subDepartmentField,
            statusField: statusField,
            projectidField: projectidField
        },
        beforeSend: function(data){
            $('#searchSpinner').show();
            console.log("Sending request");
        },
        success: function(data){
            console.log("Successful request");
            data = JSON.parse(data, true);
            loadTransactions(data['response']['transactions']);
            $('#searchSpinner').hide();
        },
        error: function(data){
            console.log("Bad request");
            $('body').html(JSON.stringify(data));
            $('#searchSpinner').hide();
        }
    }).done(function(data){
        console.log("finished");
        $('#searchSpinner').hide();
    });

}
4

1 に答える 1

1

問題は AJAX リクエストにあるのではなく、不正な形式の MySQL クエリがあまりにも多くのリソース時間を消費し、ページ タイム アウトが発生していたことが判明しました。

于 2013-11-03T20:37:32.540 に答える