2011-10-15 5 views
4

내 웹 사이트의 피드 위젯에서 Twitter 피드를 표시하고 있습니다. 때때로 위젯은 어떤 정보도 표시하지 않는 것을 좋아합니다. API가 오버로드되어 있기 때문입니다. 그럼에도 불구하고 트위터가 내 피드를로드 할 수없는 경우 오류 메시지를 표시하는 알려진 방법이 있습니까? 다른 이들이이 문제를 경험 했습니까?Twitter 위젯이 항상 채워지지는 않습니다.

+0

나는 당신의 페이지를 트위터에 무슨 일이 일어나고 있는지보고 디버깅을 시도하고 다른 버그를 발견했다. fbaccess.js 줄 10에서 'if (x.substr (0,12)! ='access_token ') {'에 오류가 있습니다. 'x = get_cookie ("access_token");'쿠키가 없다면 x를'null '로 설정합니다. 그러면 x가 문자열 객체가 아니기 때문에'x.subrr '이 나옵니다. 아마도 'if (x && x.substr (0,12)! ='access_token ') {' – jatrim

+0

로 변경해야합니다. 트위터 위젯 프레임이 여전히 빈 트윗 divs와 함께 있습니까? 또는 정보 표시를 중단 할 때 짹짹 div가 전혀 없습니까? –

+0

위젯이 실패 할 경우 div 또는 iframe을 전혀 삽입하지 않습니다. – Felix

답변

2

먼저 OS에 적합한 HTTP 기록 프록시를 사용하십시오 (Windows의 경우 Fiddler2가 환상적 임). 오류가 발생할 때까지 페이지를 F5로 이동하십시오.

필터 호스트에 대한 로그 widgets.twimg.com 또는 api.twitter.com ...이 때문에 실패 지점 진단 :

  1. 만약 JS (또는 CSS) 요청을 widgets.twimg.com 실패 (404 또는 잘린 텍스트를 찾음), 자바 스크립트를 가져 오지 못했습니다. 파일은 정적이어서는 안됩니다.
  2. api.twitter.com 요청이 누락 된 경우 자바 스크립트를 실행하지 못했습니다.
  3. api.twitter.com 요청이 발생했지만 응답에 오류가있는 경우 (잘못된 응답 코드 또는 응답이 울림) 트위터 API가 피드를 제공하지 못합니다. 그러나하지 좋은 테스트가이 설정됩니다 있기 때문에 -

자바 스크립트 1을 검출를 들어, 타임 아웃을 사용하여로드 실패를 감지하고,로드 확인 온로드 할 수 있습니다 (간단한 검사는 window.twttr 존재입니다 자바 스크립트의 맨 위, 그래서 단지 자바 스크립트 구문이 유효하고 실행을 시작했다는 것을 확인합니다). (IE에 대한로드를 감지하기 위해 onreadystate가 필요할 수 있습니다.) 012를 검색하려면 디버거를 사용하여 페이지를 실행하십시오.

코드를 간략하게 살펴보면 코드가 twitter api에 대한 요청을 다시 시도하는 것처럼 보입니다 (api의 구성 설정을 보길 원할 것입니다). api 변수가 있는지 확인합니다 모든 것이 실행 중이다. TWTR.Widget.isLoaded_isRunning_hasOfficiallyStarted.

관련 문제