Facebook 从 Windows Forms 扩展用户访问令牌
本文关键字:用户 访问令牌 扩展 Forms Windows Facebook | 更新日期: 2023-09-27 18:34:38
我在Windows表单应用程序中有一个简单的方法,可以在我是管理员的页面上发布视频。 但图形 API 用户令牌已过期。 如何延长超过 2 天?(应用程序将使用2天(
var fb = new FacebookClient("GRAPH API USER TOKEN");
dynamic x = fb.Get("/me/accounts", null);
foreach (var item in x.data)
{
if (item.id == "PAGEID")
fb = new FacebookClient(item.access_token);
}
dynamic parameters = new ExpandoObject();
parameters.source = new FacebookMediaObject { ContentType = "video/mp4", FileName = VideoId + ".mp4" }.SetValue(File.ReadAllBytes(@"c:'x'y'" + VideoId + ".mp4"));
parameters.title = "foo";
parameters.description = "more foo";
dynamic result = fb.Post("/PAGEID/videos", parameters);
您需要将该短期令牌交换为扩展令牌。
这可以通过以下调用来完成:
https://graph.facebook.com/oauth/access_token?
client_id=APP_ID&
client_secret=APP_SECRET&
grant_type=fb_exchange_token&
fb_exchange_token=EXISTING_ACCESS_TOKEN
您的扩展令牌在响应中。
使用 C# SDK:
var result = _fb.Post("oauth/access_token",
new
{
client_id = "APP_ID",
client_secret = "APP_SECRET",
grant_type = "fb_exchange_token",
fb_exchange_token= "SHORT_LIVED_TOKEN"
});