$ .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은 텍스트 파일입니다 ... 그러나 Wen은 '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
나에게는 더 많은 매개 변수가 누락 된 것 같습니다.
편집하다:
아래 답변은 내 것보다 더 정확해 보이며, 크로스 도메인 액세스 일 수 있습니다.
제휴하지 않습니다 StackOverflow