【问题标题】:Log out from facebook从 Facebook 注销
【发布时间】:2011-10-14 18:17:04
【问题描述】:

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

FacebookDesktop.logout(handleLogout);

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

该方法运行但从不注销。我认为也许加载另一个我可以注销的请求,我发现使用:

“https://www.facebook.com/logout.php?” + info.get_accessToken() + "&next=http://www.Google.com"

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

提前致谢!

【问题讨论】:

  • 我终于得到了获取访问令牌的方法,使用graph.facebook.com/oauth/…,但我不知道如何从 flex 中获取它,我不确定是否使用此 url 我可以从 facebook 注销.. .

标签: facebook apache-flex logout


【解决方案1】:

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

解释

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

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. CLIENT_ID,APP_SECRET 分别替换为 AppIdAppSecret
  4. CURRENT_URL 应该是您在其中实施代码的页面的 url。
  5. &scope=read_stream”部分不是强制性的。如果您需要任何其他权限,请在此处以逗号分隔值的形式输入。

你会得到一个格式的字符串

access_token=ACCESS_TOKEN_VALUE&expires=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);

【讨论】:

  • 感谢您的帮助,我已经开发了 Facebook 应用程序,按照我重写了一些代码的步骤...但是我无法获得访问令牌...您知道我如何获得它吗?
  • 谢谢罗宾,不幸的是我不太了解您发布的程序,我的意思是,我对 html 不太了解。也许有一个最简单的方法来获取访问令牌......
  • 您是否具备asp.net 或C#.net 的基本工作知识。请让我知道。这是检索访问令牌的标准图形 API 过程。获得访问令牌的唯一其他方法是访问 (developers.facebook.com/tools/explorer/?method=GET)。有一个按钮“获取访问令牌”。但这只是您的访问令牌。您无法以这种方式获取其他用户的访问令牌
  • 谢谢罗宾,我终于使用另一种方法来获取访问令牌 ussign graph.facebook.com/oauth/… 但我无法使用访问令牌注销,所以问题是是否有正确的方法来记录用户离开脸书。非常感谢您的时间和帮助
  • 发送 POST 请求到 'facebook.com/…' 这是 Facebook 网站中提到的注销 Facebook 的正确方法(developers.facebook.com/docs/authentication 阅读主题注销)
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2014-02-16
  • 2012-08-16
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2011-02-15
相关资源
最近更新 更多