$ .ajax trabajando con archivo y no url?
Pregunta
en la función $ .ajax, la parte de url tiene data.json, que es un archivo de texto, pero quiero poner una url, es decir,
el código funciona con
$(document).ready(function() {
$('#content').html('');
$.ajax({
url:'data.json',
dataType: "json",
success: function(data) {
$('#content').append('<p>'+data.rank+'</p>');
}
});});
donde data.json es un archivo de texto ... pero cuando reemplacé 'data.json' con ' http://twittercounter.com/api/username=Anand_Dasgupta&output=json&=resson = 3 '... que es la url real, entonces no hay salida ...
$(document).ready(function() {
$('#content').html('');
$.ajax({
url:'http://twittercounter.com/api/username=Anand_Dasgupta&output=json&results=3',
dataType: "json",
success: function(data) {
$('#content').append('<p>'+data.rank+'</p>');
}
});});
Un consejo será muy apreciado. Gracias.
Solución
Como @ harshath.jr señaló correctamente, deberá enviar una solicitud de proxy a través de su dominio, por ejemplo:
$('#content').html('');
$.ajax({
url:'twitterProxy.php?username=Anand_Dasgupta&results=3',
dataType: "json",
success: function(data) {
$('#content').append('<p>'+data.rank+'</p>');
}
});});
Otros consejos
Este parece ser un caso de prevención ajax de dominios cruzados.
Necesitará usar un script proxy del lado del servidor para esto.
utilizando $ .getJSON debe resolver todas sus preocupaciones. Y te llamará por la mañana.
Parece que tienes error tipográfico en la url, el signo de interrogación es significativo ya que diferencia la url de los parámetros:
http://twittercounter.com/api/?username=Anand_Dasgupta&output=json&results=3
En mi opinión, parece que faltan algunos parámetros más.
EDITAR:
Las respuestas a continuación parecen más correctas que las mías, definitivamente podría ser un acceso de dominio cruzado.