応答形式としてjsonpを指定した場合、応答データはJSONP(JavaScript Object Notation with Padding)を使用して形式設定され、JavaScript関数呼び出しでラップされます。
クライアントは、オプションで一意の要求識別子(reqId
)を指定できます。この識別子は応答で返され、クライアントは非同期で受信した複数の応答を区別できます。 一般的な応答の一般的な構造は次のとおりです。
/*jsonp*/s7jsonResponse({
"
<varname>
objectName
</varname>.
<varname>
propertyName
</varname>" : "
<varname>
propertyValue
</varname>",
...
}, "
<varname>
reqId
</varname>" );
s7jsonResponse
JavaScript関数は、クライアントによって定義される必要があります。 最も簡単な形式では、関数は次のようになります。
var responseData;
S7jsonResponse(data, reqId)
{
responseData = eval(data);
}
JSONP応答形式をサポートするリクエストでは、 req=
パラメーターの拡張構文を使用して、JSコールバックハンドラーの名前を指定できます。
req=...,json [&handler = reqHandler]
<reqHandler>
は、JSONP応答に存在するJSハンドラーの名前です。a ~ z、A ~ Zおよび0 ~ 9文字のみ使用できます。 (オプション)初期設定は s7jsonResponse
.
Dynamic Media Image Serving Viewersパッケージには、画像サービングからJSONP形式のデータを要求して解析するユーティリティが含まれています。
JSONP形式について詳しくは、 https://en.wikipedia.org/wiki/JSONPを参照してください。
JSON形式について詳しくは、 www.json.orgを参照してください。
reqも参照してください。