如何以编程方式发布到自己的Facebook页面?
我的情况如下。 我是一个Facebook应用程序的所有者和一个Facebook页面。我想以编程方式(从代码)发布到这个Facebook页面。 据我所知,我需要一个Facebook应用程序来做到这一点,所以我创建了一个。 我使用facebook php sdk和代码点火器(我没有使用JavaScript sdk)。如何以编程方式发布到自己的Facebook页面?
我有Facebook的object.I打印它的方法,并尝试printint用户名,而我登录到Facebook。 这没有奏效。 我的问题如下: 1)为什么不能打印Facebook ID? 2)什么是最简单的编程方式发布到我的Facebook页面?(从我的应用程序,或从我的用户)
我做错了什么? 这是我的代码
$config = array(
'appId' => 'xxxx',
'secret' => 'xxxx',
'cookie' => true,
);
$this->load->library('facebook', $config);
echo '<pre>';print_r(get_class_methods($this->facebook));
$id = $this->facebook->getAppId();
$secret =$this->facebook->getApiSecret();
$uri = "http://tipsterscorner.com/stats/display/facebook1";//callback_url se pare ca nu e bun
//我建立了Facebook url.If我在浏览器中使用,我得到了一系列的弹出窗口(你允许应用程序布拉布拉) //我读的地方,如果我最后parametere更改代码,并使用卷曲,我会得到令牌的响应 //打印的返回URL的屏幕上,但不会发生
$facebook_url = "https://www.facebook.com/dialog/oauth?`client_id=$id&client_secret=$secret&redirect_uri=$uri&scope=publish_stream,offline_access,read_stream,manage_pages&response_type=token";`
$curl = curl_init();
// Set some options - we are passing in a useragent too here
curl_setopt_array($curl, array(
CURLOPT_RETURNTRANSFER => 1,
CURLOPT_URL => $facebook_url,
CURLOPT_USERAGENT => 'Codular Sample cURL Request'
));
// Send the request & save response to $resp
$resp = curl_exec($curl);
这是URL。 http://tipsterscorner.com/stats/display/facebook1
非常感谢。
要在facebook上自行发布帖子并代表他人使用该应用,您需要获取user access
令牌。有两种Access Tokens
即App Access Token
和User Access Token
。当应用程序以用户的名义发布时User Access Token
是必需的。 User Access Token
是在用户为应用程序授予权限(您在浏览器中输入Facebook网址时遇到的对话框弹出窗口)时生成的。它完全取决于用户是否允许应用程序以他们的名义发布。应该开发应用程序来处理这两种情况。一旦用户获得许可(Basic Permission
,其中包括用户的所有公开可用信息),将生成用户访问令牌。您可以将其存储在database table
或SESSION
中。
有时用户访问令牌可能会失效,并且必须检索新令牌。在此期间,curl
可用于检索,因为用户已授予该应用程序的权限。
http://developers.facebook.com/blog/post/2011/05/13/how-to--handle-expired-access-tokens/
您需要阅读并了解OAuth2登录流程。 developers.facebook.com上的“身份验证”下有很多教程。上面的代码是不完整的,你从来没有实际登录到FB。拥有一个FB API密钥是不够的,你需要来自用户的认证令牌(即使它自己!)。 – 2013-05-13 06:56:34
好的。所以你所说的基本上是:step1)从用户那里获取认证令牌,然后我可以代表他发布呢?我是否还需要使用Facebook应用来做到这一点? – 2013-05-13 09:39:01
感谢您的回复 – 2013-05-13 09:40:06