Se jsonp for especificado como o formato de resposta, os dados de resposta serão formatados usando JSONP (JavaScript Object Notation with Padding), encapsulado em uma chamada de função JavaScript.
O cliente pode especificar um identificador de solicitação exclusivo opcional ( reqId
), que é retornado na resposta e permite que o cliente diferencie várias respostas recebidas de forma assíncrona. Uma resposta típica tem a seguinte estrutura geral:
/*jsonp*/s7jsonResponse({
"
<varname>
objectName
</varname>.
<varname>
propertyName
</varname>" : "
<varname>
propertyValue
</varname>",
...
}, "
<varname>
reqId
</varname>" );
A variável s7jsonResponse
A função JavaScript deve ser definida pelo cliente. Em sua forma mais simples, a função pode ter esta aparência:
var responseData;
S7jsonResponse(data, reqId)
{
responseData = eval(data);
}
As solicitações que oferecem suporte ao formato de resposta JSONP permitem especificar o nome do manipulador de retorno de chamada JS usando a sintaxe estendida de req=
parâmetro:
req=...,json [&handler = reqHandler]
A variável <reqHandler>
sintaxe é o nome do manipulador JS presente na resposta JSONP. Somente caracteres a-z, A-Z e 0-9 são permitidos. Opcional. O padrão é s7jsonResponse
.
O pacote Visualizadores do Servidor de imagens da Dynamic Media inclui um utilitário para solicitar e analisar dados formatados em JSONP do Servidor de imagens.
Consulte https://en.wikipedia.org/wiki/JSONP para obter mais informações sobre o formato JSONP.
Consulte www.json.org para obter mais informações sobre o formato JSON.
Consulte também solic.