$.ajax работает с файлом, а не с URL?
Вопрос
в функции $.ajax часть URL содержит data.json, который является текстовым файлом, но я хочу указать URL, т.е.
код работает с
$(document).ready(function() {
$('#content').html('');
$.ajax({
url:'data.json',
dataType: "json",
success: function(data) {
$('#content').append('<p>'+data.rank+'</p>');
}
});});
где data.json - это текстовый файл ... но когда я заменяю 'data.json' на 'http://twittercounter.com/api/username=Anand_Dasgupta&output=json&results=3'... который является фактическим URL-адресом, тогда выходных данных нет...
$(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>');
}
});});
ваш совет будет высоко оценен.Спасибо.
Решение
Как правильно заметил @ harshath.jr, вам потребуется прокси-сервер, который запрашивает через ваш домен, например:
$('#content').html('');
$.ajax({
url:'twitterProxy.php?username=Anand_Dasgupta&results=3',
dataType: "json",
success: function(data) {
$('#content').append('<p>'+data.rank+'</p>');
}
});});
Другие советы
Похоже, что это случай междоменной профилактики ajax.
Для этого вам понадобится прокси-скрипт на стороне сервера.
использование $ .getJSON должно решить все ваши проблемы. И он позвонит тебе утром.
Кажется, у вас опечатка в URL, вопросительный знак важен, поскольку он отличает URL от параметров:
http://twittercounter.com/api/?username=Anand_Dasgupta&output=json&results=3
Как по мне, похоже, отсутствуют еще некоторые параметры.
Редактировать:
Приведенные ниже ответы выглядят более правильными, чем мои, это определенно может быть междоменный доступ.