Por lo que pude ver es que su servidor no admite JSONP con sus solicitudes. Por ejemplo
var getUrl = 'http://webapp.armadealo.com/home.json';
$.ajax({
url : getUrl,
type : 'GET',
dataType : 'jsonp text',
jsonp: 'jsonp',
crossDomain : true,
success: function() { console.log('Success!'); },
error: function() { console.log('Uh Oh!'); },
});
Esto diría SyntaxError: invalid label
. La devolución tal como la tiene no tiene el formato JSONP correcto. Tiene que estar listo para funcionar como JSONP porque jQuery lo requiere.
Así que lo que está recuperando es correcto, pero no es lo que necesita. Lo que necesita para JSONP llama se vería así:
functionName({
"mall": {
"name": "South Shore Plaza",
"city": "Braintree",
"directory": "/assets/directory/0000/0094/show_floorplan.aspx",
"postal_code": "02184",
"street": "250 Granite St",
"lng": -71.023692,
"id": 147,
"phone": "(781) 843-8200",
"lat": 42.218688,
"state": "MA"
}
});
... ya que lo que vuelve este momento no es válida JavaScript (por sí mismo, y eso es lo que es), y así es como funciona JSONP, la respuesta en realidad necesita ser JavaScript ejecutable.
Puede obtener el mismo error simplemente colocando ese código directamente en su página en un bloque <script>
.
Si usted está justo después de la inserción de datos, le recomiendo un complemento como jQuery-oembed, para hacer eso. Si buscas los datos, necesitarás algo en tu servidor para procesar el JSON, luego obtendrás los datos de tu servidor después de eso.
Por ejemplo
así que digamos que nos gustaría hacer una entre dominios utilizando jQuery. Así es como la llamada jQuery $.ajax
debe verse como:
$.ajax({
dataType: 'jsonp',
data: 'id=test',
jsonp: 'jsonp_callback',
url: 'http://www.differentdomain.com/get_data.php',
success: function() {
// do something
},
});
Ahora en el lado del servidor (en el archivo de get_data.php) tenemos que obtener el nombre de devolución de llamada y enviar los datos en formato JSON envueltos en el función de devolución de llamada. Algo como esto:
<?php
$jsonp_callback = $_GET['jsonp_callback'];
$data = array('1','2','3');
echo $jsonp_callback . '('.json_encode($data).');';
?>
JSONP sólo se puede utilizar siempre y cuando el servidor de integrar adecuadamente la respuesta en una llamada a una función JavaScript.
Pruebe con una cadena JSON más pequeño. – kiranvj
¿El servidor está configurado para manejar solicitudes tipo JSONP? –