example ajax jsonp ria server-side

example - ajax web



¿JSONP requiere modificaciones al servidor? (1)

Entiendo que jsonp es una técnica para sortear la misma política de origen. Básicamente, se refiere al punto final de su servidor json en una etiqueta de script, porque las etiquetas de script están exentas de la política SO.

Mi pregunta es: suponiendo que un servidor tenga un punto final que sirva a json, ¿hay modificaciones necesarias en el servidor para utilizar jsonp en el cliente?

Creo que no, pero quiero estar seguro ....


Sí, JSONP es ligeramente diferente cuando se procesa, por lo que su servidor debe admitirlo.

JSON se ve así:

{ "name": "value" }

Mientras JSONP se ve así:

functionName({ "name": "value" });

Si lo que está usando lo soporta, está cubierto, pero no es lo mismo que soportar solo JSON. Cuando el servidor recibe una solicitud, por ejemplo: http://example.com/json?callback=functionName , lo anterior es lo que debe representar, porque la forma en que se ve en la página es la siguiente:

<script type="text/javascript" src="http://example.com/json?callback=functionName"></script>

Esto significa que algo que se ejecuta debe devolverse, como ilustración, esto es válido:

<script type="text/javascript"> functionName({ "name": "value" }); </script>

Si su servidor no fuera compatible con JSONP sería:

<script type="text/javascript"> { "name": "value" } </script>

... y obtendrás errores de sintaxis, ya que no es un JavaScript válido.