facebookでAPIを使ったPOST

facebookのAPIを使ってPHPで投稿する方法をメモっときます。
前提としてOAuthするときにscopeで「publish_stream」を指定しとく必要があります。投稿権限の認証がとれてないとPOSTできないので。

$access_token = アクセストークン;
$msg = "あー、あー、これはテスト投稿です。";

$url = "https://graph.facebook.com/me/feed"
		. '?access_token=' . $access_token
		. '&message=' . urlencode( $msg );

require_once('HTTP/Request2.php');
$request = new HTTP_Request2($url, HTTP_Request2::METHOD_POST);
$request->setConfig(array(
		//'proxy_host' => 'proxy.example.net',
		//'proxy_port' => 3128,
		'ssl_verify_peer' => false
));

$response = $request->send();
if ($response->getStatus() / 100 != 2) {
	echo '<pre>' . $response->getReasonPhrase() . '</pre>';
	die();
}

と、こんな感じです。
OAuthが通っててアクセストークンが取れてればカンタンです。

facebookのOAuthについてはこちらをどうぞ。

PHP facebookのOAuth処理(2011.03.28)
facebookのOAuth(その2)(2011.07.10)