1

まず、jsonp の仕組みを知っています。callback ({a:1})これらの種類のリクエストをサポートするサーバーからjs コードを挿入します。

facebook に接続するこのコードがあり、無効な json 結果を返します。

datatype:jsonp で jquery ajax を使用してjsonp の原因をサポートします - DOES 戻り値 (無効なもの)

jsonp 呼び出しからの応答は次のとおりです。

for(;;);  //<----------- the problem
{
    "__ar": 1,
    "error": 1357001,
    "errorSummary": "Not Logged In",
    "errorDescription": "Please log in to continue.",
    "payload": {
        "__dialog": {
            "title": {
                "__html": "Not Logged In"
            },
            "body": {
                "__html": "Please log in to continue."
            },
            "buttons": [
            {
                "name": "login",
                "label": "Log In",
                "handler": "goURI(\"\/login.php\", true);"
            }],
            "modal": true,
            "onloadRegister": ["setInterval(function () {\n        if (getCookie(\"c_user\") || getCookie(\"csm\")) {\n          window.location.reload();\n        }}, 5000);"]
        }
    },
    "js": ["8fTQS"],
    "resource_map": {
        "8fTQS": {
            "type": "js",
            "src": "https:\/\/s-static.ak.fbcdn.net\/rsrc.php\/v2\/y9\/r\/NXhpMFxH7x0.js"
        }
    }
}

もちろん、これは無効なjsonです。

火炎虫 : ここに画像の説明を入力

このテキストを jsonlint に貼り付け、最初の行を削除すると、有効な json になります。

結果から行を削除できればfor(;;);、結果を解析できたはずです。

for(;;);テキスト応答をキャッチして、空の文字列に置き換えたいです。

ドキュメントをjqueryしたいのですが、次の情報に気付きました:

ここに画像の説明を入力

私は書き込もうとしましjsonp textたが、それでもエラーです。

for(;;);エラーを表示せずに結果を取得し、空の文字列に置き換えるにはどうすればよいですか?

4

0 に答える 0