如何使用C#SDK获取访问令牌

avn*_*nic 7 c# facebook-c#-sdk

我将Facebook SDK更新到6.0.10,一些以前工作的代码不再起作用了.我曾经在用户的墙上发布使用下面的方法.

FacebookClient曾经使用的类AppId,并且AppSecret我没有为我的应用程序提供任何访问令牌.

string uId = "SomeUid";
FacebookClient fb = new FacebookClient(AppId,AppSecret );

string userFeedPath = String.Format("/{0}/feed", uId);

dynamic parameters = new ExpandoObject();
parameters.link = "Test@test";
parameters.message = "test";

try
{
    dynamic result = fb.Post(userFeedPath, parameters);
}
catch(Exception ex)
{

}
Run Code Online (Sandbox Code Playgroud)

现在即使我试试这个,

FacebookClient fb = new FacebookClient();

fb.AppId = "1234...";
fb.AppSecret = "76e69e0c334995cecc8c....";
Run Code Online (Sandbox Code Playgroud)

我收到这个错误:

(OAuthException - #200)(#200)此API调用需要有效的app_id.

我该如何解决这个问题?

pra*_*bir 31

您需要通过发出请求来获取应用访问令牌.

var fb = new FacebookClient();
dynamic result = fb.Get("oauth/access_token", new { 
    client_id     = "app_id", 
    client_secret = "app_secret", 
    grant_type    = "client_credentials" 
});
fb.AccessToken = result.access_token;
Run Code Online (Sandbox Code Playgroud)

  • @prabir它会很棒,如果有一个简洁的文档你的这个sdk.使用这个sdk真的很酷. (3认同)