从facebook退出

时间:2011-10-14 18:17:05

标签: facebook flex logout

我正在开发一个Flex桌面应用程序,但我无法从Facebook登出。我的意思是在登录并更新我要更新的照片后,我运行该方法注销,看起来像这样

FacebookDesktop.logout(handleLogout);

其中handleLogout是我可以做其他事情的函数。

该方法运行但从未注销。我想也许加载我可以注销的其他请求,我发现使用:

  

“https://www.facebook.com/logout.php?” + info.get_accessToken()+   “&安培;下一个HTTP =://www.Google.com”

会退出,但我不知道我在哪里获得了accessToken。

提前致谢!

1 个答案:

答案 0 :(得分:1)

使用C#代码在asp.net页面中实现以下代码。

<强>说明

首先,您需要发送一个请求来验证用户(IF部分)。您将获得成功身份验证的“CODE”。然后发送带有此代码的请求以授权该应用程序。成功授权后,您将获得访问令牌作为响应。

protected void Page_Load(object sender, EventArgs e)
{
    if (Request.QueryString["code"] != null)
    {
        Response.Redirect("https://graph.facebook.com/oauth/access_token?client_id=CLIENT_ID&redirect_uri=CURRENT_URL&client_secret=APP_SECRET&code="+Request.QueryString["code"]);
     }
     else
     {
        Response.Redirect("https://www.facebook.com/dialog/oauth?client_id=CLIENT_ID&redirect_uri=CURRENT_URL&scope=read_stream");
     }
}

这是程序

  1. 创建一个asp.net网站
  2. default.aspx 页面中,实现上述代码。
  3. 分别用 AppId AppSecret 替换 CLIENT_ID,APP_SECRET
  4. CURRENT_URL 应该是您实施代码的网页的网址。
  5. &amp; scope = read_stream ”部分不是必需的。如果您需要任何其他权限,请在此处以逗号分隔值输入。
  6. 您将获得格式为

    的字符串

    <强> =的access_token&ACCESS_TOKEN_VALUE放大器;期满= EXPIRY_TIME

    作为回应。


    尝试使用flex

    发送POST请求
    var urlLoader:URLLoader = new URLLoader();
    var request:URLRequest = new URLRequest("https://www.facebook.com/logout.php?next=YOUR_URL&access_token=ACCESS_TOKEN");
    request.data = binaryData;
    request.method = URLRequestMethod.POST
    urlLoader.load(request);