如何从 .NET 发布到 Facebook 页面墙
我已经创建了 Facebook 页面。 我没有应用程序秘密,也没有访问令牌。
我想从我的 .NET 桌面应用程序发布到此页面。 我该怎么做呢?谁能帮忙,我在哪里可以获得访问令牌?
我应该创建一个新的 Facebook 应用程序吗?如果是,我如何授予该应用程序在页面墙上发布的权限?
更新1: 我没有网站。 我需要将公司的新闻从 .NET 桌面应用程序发布到公司的 Facebook 页面。 我所拥有的只是 Facebook 页面帐户的登录名/密码。
更新2: 我已经创建了 Facebook 应用程序。使用 AppID/SecretKey。我可以获得访问令牌。但... 如何授予在页面墙上发帖的权限?
(OAuthException) (#200) 用户尚未授权应用程序执行此操作
I've created Facebook page.
I have no application secret and no access token.
I want to post to this page from my .NET desktop application.
How can I do it? Can anyone help please, where can I get access token for this?
Should I create a new Facebook Application? If yes, how can I grant permissions to this application to post on page's wall?
UPD1:
I have no website.
I need to post company's news from .NET desktop application to company's Facebook page.
All I have is Login/Password for Facebook Page Account.
UPD2:
I've created Facebook Application. With AppID/SecretKey. I can get access token. But...
How can I grant permissions to post to page's wall?
(OAuthException) (#200) The user hasn't authorized the application to perform this action
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(7)
我创建了一个视频教程,展示如何在此位置执行此操作:
http://www.markhagan.me/Samples/Grant-Access-And-Post-As-Facebook-User-ASPNet
您会注意到,在我的示例中,我要求两者“发布流”和“管理页面”。这样您还可以在该用户是管理员的页面上发帖。这是完整的代码:
I have created a video tutorial showing how to do this at this location:
http://www.markhagan.me/Samples/Grant-Access-And-Post-As-Facebook-User-ASPNet
You will notice that, in my example, I am asking for both "publish_stream" and "manage_pages". This let's you also post on pages of which that users is an admin. Here is the full code:
您需要向用户请求publish_stream 权限。为此,您需要将publish_stream 添加到发送给Facebook 的oAuth 请求的范围中。完成所有这一切的最简单方法是使用 .net 的 facebooksdk,您可以从 codeplex 获取它。有一些示例说明如何使用桌面应用程序执行此操作。
一旦您请求该权限并且用户授予该权限,您将收到一个访问令牌,您可以使用该令牌将其发布到您的页面墙上。如果您需要存储此权限,则可以存储访问令牌,尽管您可能需要在您的范围内请求离线访问权限才能获得不会过期的访问令牌。
You need to ask the user for the publish_stream permission. In order to do this you need to add publish_stream to the scope in the oAuth request you send to Facebook. The easiest way to do all of this is to use the facebooksdk for .net which you can grab from codeplex. There are some examples there of how to do this with a desktop app.
Once you ask for that permission and the user grants it you will receive an access token which you can use to post to your page's wall. If you need to store this permission you can store the access token although you might need to ask for offline_access permission in your scope in order to have an access token that doesn't expire.
您可以使用
https://www.nuget.org/packages/Microsoft.Owin.Security .Facebook/ 获取用户登录和权限以及
https://www.nuget.org/packages/Facebook.Client/
发布到提要。
下面的示例适用于 ASP.NET MVC 5:
在回调中,您将获得用户访问令牌:
然后您可以使用它来发布到用户的提要或页面
You can use
https://www.nuget.org/packages/Microsoft.Owin.Security.Facebook/ to obtain users login and permission and
https://www.nuget.org/packages/Facebook.Client/
to post to feeds.
Below example is for ASP.NET MVC 5:
On the callback you get user access token:
Which then you can use to post to user's feed or page
您需要授予“publish_stream”权限。
You need to grant the permission "publish_stream".
最简单的方法可能是通过 Facebook PowerShell 模块,http://facebookpsmodule.codeplex.com。这允许与 FacebookSDK 相同类型的操作,但通过 IT 管理脚本接口而不是面向开发人员的接口。
据我所知,Facebook Graph API 仍然存在限制,您将无法使用 Facebook Graph API 发布对其他页面(例如@Microsoft)的引用。这将适用于 FacebookSDK、FacebookPSModule 以及通过 Facebook Graph API 构建的任何其他内容。
Possibly the easiest way to do this is via Facebook PowerShell Module, http://facebookpsmodule.codeplex.com. This allows the same sort of operations as FacebookSDK, but via an IT-Admin scripting interface rather than a developer-oriented interface.
AFAIK there is still a limitation of Facebook Graph API that you will not be able to post references to other pages (e.g. @Microsoft) using the Facebook Graph API. This will apply to FacebookSDK, FacebookPSModule, and anything else built over Facebook Graph API.
您将在 https://developers 上获得有关如何创建 Facebook 应用程序或将您的网站链接到 Facebook 的信息。 facebook.com/?ref=pf。
您可以在 http://facebooksdk.codeplex.com/ 下载 facebook sdk。该网站的文档部分给出了一些很好的示例。
You will get information on how to create a facebook app or link your website to facebook on https://developers.facebook.com/?ref=pf.
You will be able to download facebook sdk at http://facebooksdk.codeplex.com/. There are some good example given in the document section of the site.