我一直在使用Facebook C#SDK一段時間了,但有一個真正的舊版本,我仍然在使用REST API(我認爲)。我只關心使用API張貼到我自己的Facebook頁面(我有一個WCMS插件,將內容發佈到我們機構的Facebook頁面)。我想知道是否有人知道如何使用最新版本的SDK獲取此設置的好教程?我也關心offline_access何時會消失,所以我們也會讚賞這種想法。我寧願不必每隔60天手動獲取一個新的訪問令牌。這似乎有些不必要,因爲我用來發布帖子的應用與我試圖發佈的頁面位於同一個FB帳戶中。使用Facebook C#SDK發佈到頁面
1
A
回答
2
1
http://blog.prabir.me/post/Facebook-CSharp-SDK-Making-Requests.aspx
,找到圖形API後
我希望有一天prabir和Nathan將完成網站的文檔,我們將學習它clearly.for now.just挖掘網絡。
11
下面是做這件事:
public static string RefreshTokenAndPostToFacebook(string currentAccessToken)
{
string newAccessToken = RefreshAccessToken(currentAccessToken);
string pageAccessToken = GetPageAccessToken(newAccessToken);
PostToFacebook(pageAccessToken);
return newAccessToken; // replace current access token with this
}
public static string GetPageAccessToken(string userAccessToken)
{
FacebookClient fbClient = new FacebookClient();
fbClient.AppId = "app id";
fbClient.AppSecret = "app secret";
fbClient.AccessToken = userAccessToken;
Dictionary<string, object> fbParams = new Dictionary<string, object>();
JsonObject publishedResponse = fbClient.Get("/me/accounts", fbParams) as JsonObject;
JArray data = JArray.Parse(publishedResponse["data"].ToString());
foreach (var account in data)
{
if (account["name"].ToString().ToLower().Equals("your page name"))
{
return account["access_token"].ToString();
}
}
return String.Empty;
}
public static string RefreshAccessToken(string currentAccessToken)
{
FacebookClient fbClient = new FacebookClient();
Dictionary<string, object> fbParams = new Dictionary<string, object>();
fbParams["client_id"] = "app id";
fbParams["grant_type"] = "fb_exchange_token";
fbParams["client_secret"] = "app secret";
fbParams["fb_exchange_token"] = currentAccessToken;
JsonObject publishedResponse = fbClient.Get("/oauth/access_token", fbParams) as JsonObject;
return publishedResponse["access_token"].ToString();
}
public static void PostToFacebook(string pageAccessToken)
{
FacebookClient fbClient = new FacebookClient(pageAccessToken);
fbClient.AppId = "app id";
fbClient.AppSecret = "app secret";
Dictionary<string,object> fbParams = new Dictionary<string,object>();
fbParams["message"] = "Test message";
var publishedResponse = fbClient.Post("/your_page_name/feed", fbParams);
}
+1
謝謝,謝謝,謝謝!我正在爲我搜索全部,只有有效的答案。太好了! – 2013-07-25 04:05:49
+0
參考FacebookClient可能很好嗎? – 2018-02-19 13:27:21
相關問題
- 1. 如何使用Facebook C#SDK發佈到頁面時間表?
- 2. 如何使用Facebook C#SDK在Facebook上發佈頁面
- 3. 用C#SDK在Facebook上發佈媒體到用戶/頁面牆
- 4. 使用C#SDK發佈到FaceBook牆
- 5. 使用c#發佈到Facebook牆上sdk
- 6. 使用JavaScript SDK發佈到Facebook頁面時的授權問題
- 7. Facebook C#SDK發佈到頁面牆問題
- 8. Facebook SDK發佈到頁面發佈區域
- 9. Facebook SDK:作爲組頁面發佈到組頁面ID
- 10. 使用Open Graph發佈到Facebook頁面
- 11. 使用SLRequest發佈到Facebook頁面
- 12. 使用Cron發佈到Facebook頁面牆
- 13. 使用php發佈到Facebook頁面
- 14. Facebook應用程序頁面上發佈爲使用Facebook的C#SDK
- 15. 畫布頁面大小的Facebook-C#-sdk
- 16. 如何使用c#sdk作爲管理員將提要發佈到Facebook頁面?
- 17. Facebook .NET SDK將圖像發佈到Facebook頁面
- 18. Facebook的發佈到頁面
- 19. Facebook - 發佈到組頁面
- 20. 發佈到Facebook頁面
- 21. 發佈到Facebook頁面作爲頁面
- 22. 使用考拉發佈到Facebook頁面(非用戶頁面)
- 23. 發佈在Facebook頁面作爲頁面不作爲管理員用戶使用Facebook C#SDK
- 24. 如何使用C#發佈到Facebook粉絲頁面的牆!
- 25. 使用PHP SDK的頁面上發佈的Facebook帖子
- 26. 使用iOS SDK發佈照片至Facebook粉絲頁面
- 27. 不使用PHP-SDK發佈到Facebook牆?
- 28. Facebook應用發佈到多個頁面
- 29. Facebook - 使用PHP SDK/JavaScript SDK發佈Checkins
- 30. 發佈到頁面的Python facebook SDK權限錯誤
一個經常被忽視的事實是,你不需要offline_access權限,當用戶離線後。如果您使用應用程序訪問令牌並且擁有publish_stream權限,則可以在用戶離線時發帖。你將無法做其他事情。 – 2012-03-26 21:27:11