Necesito hacer una solicitud sincrónica a la API last.fm, pero cuando uso GET y json juntos, la solicitud se vuelve asincrónica.solicitud jquery json sincrónica
mi código:
$.ajax({
async: false,
dataType: "json",
url: "http://ws.audioscrobbler.com/2.0/?method=artist.getimages&artist="+artist+"&api_key="+apiKey+"&format=json&callback=?",
success: function(html){
imgURL = html.images.image[1].sizes.size[0]["#text"];
}
});
Si quito tipoDatos: "json" o en la post, es sincrónica de nuevo, pero yo soy dependiente utilizando tanto JSON y GET.
¿Alguna idea?
hmmm, supongo que tendré que encontrar otra manera, entonces ... gracias por la respuesta de todos modos. –
¿Podría devolver la cadena JSON como texto y analizar la cadena JSON a un objeto él mismo en su función success() utilizando json2.js desde www.json.org? –
@Lunchy No sin algo para manejar redirigir la solicitud de su lado. La única forma de obtener datos desde otro dominio es usar la etiqueta de script y una función de devolución de llamada. Definitivamente parece que el servicio está orientado exactamente a eso al especificar la función de devolución de llamada como una URL. Puede simular el bloqueo, pero solo con Javascript 1.7. http://hyperstruct.net/2008/5/17/synchronous-invocation-in-javascript-part-1-problem-and-basic-solution http://www.neilmix.com/2007/02/07/threading -in-javascript-17 / – cgp