c# - 使用 C# 调试访问 token

标签 c# facebook facebook-c#-sdk

我想知道访问 token 什么时候过期

我正在使用 httprequest 并从包含链接的请求中获取响应:

https://developers.facebook.com/tools/debug/access_token?q=ACCESS_TOKEN

并搜索单词 Expires 并尝试读取包含(大约 x 分钟后)的括号之间的字符串

但是收到注销的错误任何人都可以帮助我吗?

string site = "https://developers.facebook.com/tools/debug/access_token?q=";
string token = "";
getRequest = (HttpWebRequest)WebRequest.Create(site + token);
string result;
HttpWebResponse res = (HttpWebResponse)getRequest.GetResponse();
using (StreamReader sr = new StreamReader(res.GetResponseStream()))
{
result = sr.ReadToEnd();
}
Console.WriteLine(result);
Console.WriteLine(result.Contains("Expires"));

我弄错了我需要一个包含字符串“Expires”的结果并读取将过期的时间

最佳答案

您可以在 https://developers.facebook.com/docs/howtos/login/debugging-access-tokens/ 阅读文档

请求https://graph.facebook.com/debug_token?input_token=INPUT_TOKEN&access_token=ACCESS_TOKEN

input_token:要调试的访问 token

access_token:您的应用访问 token 或来自应用开发者的有效用户访问 token 。

如果您使用的是 FB C# SDK (http://csharpsdk.org/)

var fb = new FacebookClient("app_access_token");
dynamic result = fb.Get("debug_token", new { input_token = "access_token_to_debug" });
var appId = result.data.app_id;
var isValid = result.data.is_valid;
var application = result.data.application;
var userId = result.data.user_id;
var expiresAt = result.data.expires_at;
var scopes = result.data.scopes;

您可以在 http://csharpsdk.org/docs/faq 了解如何获取应用访问 token 我还更新了文档以包括调试访问 token 。

注意:当您从用户那里获得访问 token 时,请确保也存储到期日期,这样您就可以避免此调用。

关于c# - 使用 C# 调试访问 token ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13629638/

相关文章:

c# - 我真的应该在退出我的方法范围之前处理我的对象吗?

ios - 哦哦用户取消了Facebook登录。 -PARSE

facebook - 如何使用 FQL 列出我的 friend ?

javascript - Facebook C# SDK 与 Javascript SDK 的性能注意事项

c# - (无法)开始使用 Facebook C# SDK

c# - 使用 C# 查找最少使用的 CPU 内核

c# - 如何在类/独立线程 ASP.Net Core 中使用 ApplicationDbContext

c# - 枚举中的数值常量 (c#)

Facebook OG 被 BackboneJS 网站重定向到索引页面

PHP Location Header 忽略哈希