0

jQuery を使用して、ajax 関数で php スクリプトの結果を取得します。問題はphp-scriptが別のドメインにあるため、返されるdataTypeとして「jsonp」を使用する必要がありますが、php-scriptはjsonpではなくjsonを返し(スクリプトが正しくない可能性があります)、構文エラーが発生します。どうすれば対処できますか?ajax-functionがそれを処理してエラーが発生する前に、どうにかしてjson文字列を取得できると思いますが、可能ですか?

これは私のajax関数です:

$.ajax(
    {
        type: "POST",
        dataType: "jsonp",
        url: "http://www.pecom.ru/bitrix/components/pecom/calc/ajax.php",
        data: res,
        error: function (xhr, ajaxOptions, thrownError) {
            alert("error: " + xhr.status);
        },
        success: function (data) {
            alert("Data Loaded: " + data)
        }
    }
)

ありがとうございました!

4

1 に答える 1

0

短い答えは、できないということです。

より長いものは、ある種のプロキシを設定する必要があります。制御するマシンからサーバー側でリクエストを行い、そこで結果を適切な JSONP に変換し、AJAX 経由でそのサーバーに接続します。(または、ターゲットサーバーがCORSをサポートしている可能性が非常に低い場合は、JSONP の代わりに CORS を使用できます。)

于 2013-01-29T10:03:24.350 に答える