Tengo un problema con mi solicitud JSONP .. no se mostrarán Los datos, Firebug muestra una "etiqueta válido" .."etiqueta no válida" cuando se usa JSONP?
Mi JavaScript:
$.ajax({
url: link,
dataType: "jsonp",
beforeSend: function(xhr) {
var base64 = btoa(username + ":" + password);
xhr.setRequestHeader("Authorization", "Basic" + base64);
xhr.overrideMimeType("application/json");
},
jsonpCallback: "getResources"
})
function getResources(data) {
alert(data);
alert(JSON.parse(data));
$.each(data.groupStatus, function(i, item) {
$("body").append("<p>ID: " + item.id + "</p>");
});
}
Mi JSON:
{
"groupStatus": [
{
"id": "Application Layer Configuration-ApplicationLayer",
"time": 1332755316976,
"level": 0,
"warningIds": [],
"errorIds": []
},
{
"id": "Application Layer-ApplicationLayer:nscalealinst2",
"time": 1333431531046,
"level": 0,
"warningIds": [],
"errorIds": []
}
]
}
Mi HTML:
<html>
<head>
<title>Monitor</title>
<link href="css/gadget.css" rel="stylesheet" type="text/css" />
<script type="text/javascript" src="js/jquery-1.7.2.js"></script>
</head>
<body>
<div id="content"></div>
<script type="text/javascript" src="js/gadget.js"></script>
</body>
La solicitud funciona bien, pero de todos modos no se muestran los datos.
Im en busca de una solución para el día .. ¿Puede alguien ayudarme? ¡Gracias de antemano!
SOLUCIÓN (actualización: 06.09.12)
He resuelto este problema. El servidor (interfaz REST) en la que se ejecute había puesto en práctica ninguna función de devolución de llamada de la .. Otra forma de configurar las solicitudes crossdomain SIN utilizar JSONP es establecer la siguiente variable de jQuery:
jQuery.support.cors = true;
Esto se debe a JSON * no * es un programa de JS válido pero que está tratando de ser utilizado como una sola. Descubra por qué el JSONP no funciona como se esperaba. (Por cierto, 'getRessources' parece una falta de ortografía.) –
la solicitud funciona bien ..He agregado una imagen con la respuesta. – P4tR
La respuesta no es JSONP, es JSON. Se supone que las respuestas de JSONP se envuelven dentro de una llamada de función como 'callback ({" foo ":" bar "})' –