0

URIをWebブラウザーに配置すると、サーバーはこのJSONを出力します。私のクライアントアプリは、外部ドメインにアクセスするため、JSONPを使用してこのJSONを取得します。

{
"is_execution_successful":true,
"data": "something"
}

次のように応答をラップせずにJSONPを実行する方法はありますか?

echo $_GET['json_callback']. '('. json_encode($rtnjsonobj) . ')';  

サーバー出力を編集する権限がありません。AJAX / JQueryを使用してJSONを取得するにはどうすればよいですか?

私が読んだリファレンス:http://remysharp.com/2007/10/08/what-is-jsonp/

4

1 に答える 1

3

JSONP は技術的には JSON とは何の関係もありません。それは単にJavaScriptコードです。

そのため、応答が有効な JSON である場合、JavaScript (JSONP) として実行しても何も役に立ちません。特にこの場合、JSON を JavaScript として実行すると構文エラーが発生します。

リソースに対してクロスオリジンの ajax リクエストを作成できますが、これはサーバーが次のヘッダーを送信する場合にのみ可能です。

Access-Control-Allow-Origin: *

もちろん、スターは特定のオリジンに置き換えることができます。ワイルドカードである必要はありません

于 2012-08-22T19:37:24.733 に答える