0

페이스 북에서 액세스 토큰을 가져 와서 firefox 플러그인과 함께 사용하려고합니다. 따라서 페이스 북 관점에서 데스크탑 애플리케이션입니다.Javascript에서 리디렉션 대기 중 (페이스 북 액세스 토큰)

가장 큰 문제는 리디렉션을 감지하는 것입니다 .../login_success.html 내가 어떻게 파이어 폭스를 충돌하지 않고 그것을 해야할지 모르겠다.

내 최신 시도의 그 : login_success 해당 리디렉션을 /를 기다릴 감지 할 수

function getAuthToken() { 
     var app_id = 'MY ID'; 
     var redirect_uri = 'https://www.facebook.com/connect/login_success.html'; 
     var permissions = ['user_photos', 'friends_photos', 
          'publish_stream', 'offline_access']; 
     var url = 'https://www.facebook.com/dialog/oauth?' + 
     'client_id=' + app_id + '&redirect_uri=' + redirect_uri + 
     '&scope=' + permissions.join(',') + '&response_type=token'; 

     window.open(url); 

     while(true){ 
      if(window.onload) 
        if(compareURL(redirec_uri)) 
         break; 
     } 

     var hashStr = window.location.hash.substring(1); 

     var arr = hashStr.split('&'); 

     var accessToken = arr[0]; 

     return accessToken; 
    } 

    function compareURL(url) 
    { 
     if(window.location.href.substring(0, url.length) == url) 
      return true; 
     return false; 
    } 

다른 방법은?

답변

0

브라우저가 충돌하면 "무한 루프"가 감지되어 페이지가 응답하지 않을 수 있습니다. 어쩌면 시도해야할까요

window.setInterval(function() 
{ 
    // check your redirect url and so on 
}, 1000); 
+0

고맙습니다. – wiseveri

+0

Np이면 게시물을 답글로 표시해야합니다. – Chris

+0

좋아, 내가 생각한대로 작동하지 않았다. 함수가 종료되고 변수 access_token이 유용한 값으로 설정되었다는 의미는 아닙니다. 이 기능을 종료 할 때 토큰이 필요합니다. – wiseveri

관련 문제