2012-09-19 3 views
0

사용자가 키오스크 앱으로 사용할 Silverlight 앱이 있습니다. 한 사용자가 앱을 사용하고 페이스 북에 로그인하여 자신의 일을 수행 한 다음 다음 사용자가 프로세스를 다시 시작하고 페이스 북에 로그인하여 자신의 일을 수행합니다.Facebook C# SDK 로그 아웃, Silverlight

문제는 페이스 북에서 첫 번째 사용자를 로그 할 수 없다는 것입니다.

내 앱에서 웹 브라우저 컨트롤을 사용하고 있는데 약간 오래된 것입니다. 그러나 Prabir의 블로그 http://blog.prabir.me/post/Facebook-CSharp-SDK-Logout.aspx의 안내에 따라 내 로그 아웃 기능이 작동합니다.

여기에 내 로그 아웃 기능입니다 :

private void SetFacebookLogoutSource() 
    { 
     var fbClient = new Facebook.FacebookClient(); 

     var logoutParameters = new Dictionary<string, object> 
        { 
         { "next", GenerateLoginUrl(fbClient, "publish_actions").AbsoluteUri } 
        }; 

     var logoutUrl = fbClient.GetLogoutUrl(logoutParameters); 

     webBrowser.Navigate(logoutUrl); 
    } 

그러나 이것은 단지 사용자의 페이스 북 벽에 로그인 한 마지막 날이 걸립니다.

GenerateLoginUrl 메서드는 처음 로그인 URL을 가져 오는 것과 마찬가지로 작동합니다.

아이디어가 있으십니까?

감사합니다. 그렉. 그것은 페이스 북과 같은

답변

0

은 (내가 틀렸다면,하지만하는 날 수정) 로그 아웃하는 access_token이 필요하며이 나를 위해 노력하고 있습니다 :

private void SetFacebookLogoutSource() 
{ 
    var fbClient = new Facebook.FacebookClient(); 

    var logoutParameters = new Dictionary<string, object> 
       { 
        { "next", GenerateLoginUrl(fbClient, "publish_actions").AbsoluteUri }, 
        { "access_token", [user's_access_token] } 
       }; 

    var logoutUrl = fbClient.GetLogoutUrl(logoutParameters); 

    webBrowser.Navigate(logoutUrl); 
} 

는 지금 또 다른 문제 ... 내가 돈이 그들이 내 앱의 권한을 승인하지 않으면 access_key를 얻지 못한다. 그래서 로그 아웃 할 수 없다. 그들은 일종의 limbo 상태에 머물러있다. 페이스 북 API와 함께 일하는 기쁨 :)

/그렉