从 Facebook 注销

发布于 2024-12-10 02:51:25 字数 419 浏览 0 评论 0原文

嗯,我正在开发一个 Flex 桌面应用程序,但我无法从 Facebook 注销。我的意思是在登录并更新我想要更新的照片后,我运行注销方法,如下所示

FacebookDesktop.logout(handleLogout);

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

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

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

会注销,但我不知道在哪里可以获得 accesToken。

提前致谢!

Well i developing a Flex desktop app and i cant logout form facebook. I mean after loggin in and updating the photo i want to update, i run the method to log out, which looks like this

FacebookDesktop.logout(handleLogout);

Where handleLogout is a function where i can do other things.

The method runs but never log out. I think that maybe loading an other request i could log out, and i find that using:

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

would log out, but i dont know where i ca get the accesToken.

Thanks in advance!

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

青朷 2024-12-17 02:51:25

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

说明

首先,您需要发送请求来验证用户身份(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);

The following code is implemented in for asp.net page using C# code.

EXPLANATION

First you need to send a request to authenticate the user(the IF part). You will get a "CODE" on successfull authentication. Then send a request with this code to authorize the application. On successful authorization you will get the access token as response.

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");
     }
}

HERE IS THE PROCEDURE

  1. Create an asp.net website
  2. In the default.aspx page implement the above code.
  3. Replace CLIENT_ID,APP_SECRET with the AppId and AppSecret respectively
  4. CURRENT_URL should be the url of the page in which you are implementing the code.
  5. The part "&scope=read_stream" is not mandatory. If you need any additional permissions please enter it here as comma separated values.

You will get a string in the format

access_token=ACCESS_TOKEN_VALUE&expires=EXPIRY_TIME

as response.


Try this to send a POST request using flex

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);
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文