2011-08-18 2 views
3

트위터! jQuery를위한 시간의 잘 대부분 작동하지만 산발적으로 나는이 얻을 :트윗 관련 문제! for jQuery

"NetworkError: 400 Bad Request - http://api.twitter.com/1/statuses/user_timeline.json?screen_name=jlowgren&count=5&include_rts=1&page=1&callback=jQuery16202827138555332698_1313661810432&_=1313661810465 

이것은 jQuery를 호출은 다음과 같습니다 문제

$(".tweet").tweet({ 
    username: "jlowgren", 
    count: 5, 
    loading_text: "Loading tweets…", 
    refresh_interval: 120 
}); 

이 사이트는 www.jorum.se입니다.

누구나 잘 생긴 해결책이 있다면 업보에서 풍성한 보상을받을 것입니다!

+0

속도 제한에 따라 로컬 컴퓨터에서 트위터 API를 요청할 수 있으며 위젯을 통해 전송하는 시간당 30 건의 요청을 더 많이 구현할 수 있습니다. 많은 웹 사이트에서 AJAX API를 간격을두고 사용하기 시작했습니다. – Chamilyan

답변

3

속도가 제한적으로 보입니다.

애플리케이션이 REST API에 의해 속도 제한을받는 경우 은 HTTP 400 응답 코드를 수신합니다. 응용 프로그램은 현재 속도 제한 상태를 모니터링하고 필요하면 요청을 동적으로 조절하는 것이 가장 좋습니다. REST API는 속도 제한 FAQ에서 설명한 상태를 관찰하는 두 가지 방법을 제공합니다.

  • 인증 (OAUTH) 요청

동안 요청 350/시간의 한계가있다. .

  • 비는 요청, 현재 속도 제한 상태를 확인

    http://api.twitter.com/1/account/rate_limit_status.json

    에 GET 요청을 보낼

를 요청 150/시간의 제한이 인증


자세한 내용은 this page을 참조하십시오.

+0

사이트가 많은 트래픽을 얻는다는 가정하에 등급을 매기는 유일한 방법은 서버에 마지막으로 알려진 결과를 저장하고 표시하는 것입니다 (400 응답이 발생할 경우)? – jlowgren

+1

정확하게는 아닙니다. 이것은 실제로 실제로 걱정할 필요가있는 문제는 아닙니다. 귀하의 컴퓨터에서 볼 수있는 것은 모두 로컬입니다. 다른 사용자가 로컬 컴퓨터에있는만큼 트위터를 폴링한다고 의심하지 않는 한 걱정할 필요가 없습니다. 귀하의 웹 사이트로의 트래픽은 실제로 이와 관련이 없습니다. 귀하의 ** OK **는 API를 폴링하기 위해 컴퓨터 당 1 시간에 30 건의 요청을한다고 생각합니다. – Chamilyan

+1

..하지만 안심할 수 있으려면 원하는 경우 무거운 사용자에게 API가 실패 할 경우에 대비하여 아래에 제안 된 amelvin을 수행하십시오. 문제를보기 위해 당신 외에 많은 웹 사이트가 열려 있어야합니다. 서버가 캐시 한 마지막 데이터를 제안하여 보내지 만 오버 헤드가 많은 것처럼 보일 때 해를 입히지 마십시오. 어쩌면 새로운 데이터 메시지를로드하면서 대기 상태로 빠져 나갈 수 있습니다. – Chamilyan

1

항상 약간의 리프레시 후에도 잘 작동합니다. IP 당 제한이 없습니까?

+0

시간당 afaik 요청 당 하나의 제한이지만, 그게'refresh_interval '에 대한 것입니다. – jlowgren

3

필자는 항상 트위터 네트워크가 때때로 실패 할 것이라고 생각해야한다고 생각한다. jquery 트윗 전화를 javascript try catch에 넣어주십시오.

try { 
    $(".tweet").tweet({ 
    username: "jlowgren", 
    count: 5, 
    loading_text: "Loading tweets…", 
    refresh_interval: 120 
}); 
} catch (error) { 
    // error message or other response goes here 
} 
+0

고마워요. 내가 일하러 돌아올 때 저에게 소용돌이를 줄 것입니다. 나는 실제 문제가 영구적으로 해결 될 것 같아요 오류가 발생하면 결과를 현금으로 바꿀 것입니다. – jlowgren