我正在开发一个 asp.net MVC 3 Facebook 应用程序,我正在尝试将消息发布到我的墙上。这是我的代码:
FacebookWebClient client = new FacebookWebClient();
// Post to user's wall
var postparameters = new Dictionary<string, object>();
postparameters["message"] = "Hello world!";
postparameters["name"] = "This is a name";
postparameters["link"] = "http://thisisalink.com;
postparameters["description"] = "This is a description";
var result = client.Post("/me/feed", postparameters);
我可以使用 client.AccessToken 获取访问 token ,所以我假设我不必在任何地方设置它。这段代码没有产生任何错误,结果我得到了一个 ID。然而,当我打开我的 Facebook 时,我在我的墙上和新闻提要中都看不到任何东西。我不确定我错过了什么。我在 StackOverflow 上查看了相关问题,但没有看到与我的类似的报告/问题。我也尝试根据我在其他帖子中看到的内容更改代码,但无济于事。我还检查了我的 Facebook 帐户设置,我看到我的应用程序列出了允许发布到我的墙上。我还尝试通过 Graph API 资源管理器将消息发布到我的墙上,我得到了相同的结果。作为返回,我得到了一个 ID,但是当我查看我的 Facebook 帐户时,我什么也看不到。在这待了几天。任何帮助将不胜感激。
提前致谢。
[编辑] 我想知道我的应用程序生成的 access_token 是否有问题。使用这个 access_token,正如我在我的帖子中提到的,我使用 Graph API 资源管理器得到了相同的结果。返回了一个 ID,但我的墙上没有任何消息。但是,如果我允许 Graph API 浏览器发布到我的墙上并使用它自己生成的 access_token,我就可以使用浏览器成功发布消息。这是 FB 登录按钮代码:
<div>
<h1>Login using Facebook</h1>
<p><fb:login-button perms="user_location, publish_stream, email"></fb:login-button></p>
</div>
最佳答案
基本上您需要在您的帖子参数中添加一个额外的参数。
args["access_token"] = account.access_token;
这是特定页面的 token 。
我不会重复代码,例如:Post On Facebook Page As Page Not As Admin User Using Facebook C# SDK
(第二个答案)
关于c# - Facebook C# SDK - 发布到墙上,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7252588/