xjpvictor's Blog
小老鼠,上灯台,两只耳朵竖起来

用Facebook api在Page发布状态


各种折腾·scriptweb

Facebook的api文档很复杂的样子。为了用api自动在Facebook Page上发表状态,大概研究了一下。

这篇主要是作为笔记 TL;DR

比较麻烦的是授权。要先通过https://www.facebook.com/dialog/oauth?client_id=******&redirect_uri=******&scope=manage_pages,publish_stream获得权限。

要拿到client_id需要新建一个app,然后在app的管理页面找到app id。同时为了接收返回的代码,要自己做一个页面作为redirect_uri,返回的代码会作为GET参数,可以用页面显示出来,也可以去url里扣。

之后把返回的code放进https://graph.facebook.com/oauth/access_token?client_id=******&redirect_uri=******&client_secret=******&code=******。其中client_secret是app的app secret,也可以在app的管理页面找到。

同样的会有一些返回的参数,需要的是access token,这是用来访问用户信息的,填入https://graph.facebook.com/me/accounts?access_token=******

现在就可以看到用来访问页面的access token了。可以到https://developers.facebook.com/tools/debug/accesstoken/验证一下。

访问用户信息的access token是一个小时有效的,而访问页面的是不会过期的。如果只是Facebook Page的管理员自己用这个app来管理这个页面的话,app不需要公开,也不用申请review什么的。在获得权限的时候会有提示说部分权限无法获得,忽略就可以了,其实权限是有的。

发布状态的时候用POST方式向https://graph.facebook.com/{page_id}/feed提交messageaccess_token两个参数,其中access_token就是访问页面所用的那个。{page_id}要替换成Facebook Page的id,在验证access token那一步可以找到。

本文 "用Facebook api在Page发布状态" 由 K. Huang 首先发表于 xjpvictor's Blog 并以 CC BY-NC 4.0 许可证发布 © 2017
转载注明引用来源 https://blog.xjpvictor.info/2017/01/post-to-facebook-page-via-its-api/

赞助我

评论

你的邮箱地址不会被公开。必填项以 * 标出

无意义或不相关评论将被删除

取消 上传图片 或拖拽上传

* Some files will not be uploaded. Only png, gif, jpg are allowed and maximum 10 images, each file less than 10M.

你可以添加 10 个 png/gif/jpg 图片 (每个文件小于 10M)

允许使用以下html标签:<a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>

你可以上传文件,粘贴代码或长文至 Drop.it.r

更多相似文章