0

潜在的にバグのある CGI インタープリターを処理する必要がある状況があります。getJSONすべての状況で、コールから何らかのタイプのコールバックを取得する必要があります。これには、関数に送信される偽のパラメーターtestIt(以下を参照) と、偽の応答を送信する CGI が含まれます。最初のケースを処理するためにすべてを try/catch でラップし、2 番目のケースを処理するために .done を追加するとうまくいくと思いました。しかし、CGI プロセッサが無効な応答を出力した場合、私の .done は呼び出されません。常にコールバックを受け取れるようにするにはどうすればよいですか?

私が使用しているコードは以下のとおりです。

function testIt() {
    try
    {
        console.log('start');
        $.getJSON(
            // URL of the server
            cgi_url,
            // pass the data
            {
                data: 'bogus',
            },
            // If the AJAX call was successful
            function() {
                console.log('worked');
            }
        )
        .done(function() {
                console.log('done');
            });
    }
    catch (err) {
        console.log('exception');
    }
}
4

1 に答える 1