Facebook開発者として登録
Facebookアプリを開発するためには、Facebookアカウントを開発者として登録する必要があります。以下に、このための手順を説明します。
※Facebook開発者登録には、携帯電話認証かクレジットカードの登録が必要です。
■ 【1】Facebookでアカウントを取得
Facebookアプリケーション開発にはFacebookのアカウントが必要です。本稿では、Facebookのアカウントを所有している前提で進めます。
■ 【2】開発者登録
- Facebookにloginした状態でFacebook開発者のページにアクセス
- ページ右上の「+ Create New App」ボタンをクリック
- 「New App」ダイアログの「App Name」を入力して、「Locale」で「日本語」を選択し、「Facebook 利用規約」を確認してチェック、「続行」をクリック
- 「セキュリティチェック」テキストを入力後、「送信」ボタンをクリックすることで、Facebookアプリの登録が完了
PHP−Facebook連携ライブラリやサンプルを取得
PHPでFacebookアプリを開発する前提として、Facebookが公式に用意しているPHPのライブラリやサンプルを取得し、これを使います。「facebook/php-sdk - GitHub」の以下のURLから入手できます。
公式サンプルのうち、今回は以下の2つのファイルを利用します(いずれも必須です)。それぞれ、AzurePHPプロジェクトの「approot」フォルダにコピーします。これらのファイルは、本稿に添付したサンプルにも含まれています。
- 「src/facebook.php」
PHP向けのFacebook APIライブラリ。ユーザー・プログラムからFacebook APIを使う場合は、通常はこれを利用 - 「src/fb_ca_chain_bundle.crt」
Facebook APIを使うための前提となる電子証明書。facebook.php内部でこれを利用している
なお、本稿に添付したサンプルアプリの1つ(sample.php)は、Facebook APIの使い方を学ぶためのサンプルで、公式サンプルに含まれる「examples/example.php」を、今回の環境に合わせて修正したものです。もう1つのサンプル(SAWAzure.php)は、今回開発する簡単なFacebookアプリです。
まずは、sample.phpを見ながら、Facebook APIの利用手順を見ていきましょう。
require 'facebook.php'; // アプリケーション登録後、取得できるアプリIDとAPIキーを設定 $facebook = new Facebook(array( 'appId' => 'アプリID', 'secret' => 'APIキー', 'cookie' => true, )); // Facebookのセッションを取得 $session = $facebook->getSession(); $me = null; if ($session) { // Facebookのセッションが存在する(Login している) try { // Login しているユーザーのID を取得 $uid = $facebook->getUser(); // Loginしているユーザーの情報を取得 $me = $facebook->api('/me'); } catch (FacebookApiException $e) { error_log($e); } }
上記手順によって、Facebookにログインしているユーザーの情報が変数「$me」に格納されます。実際にWebブラウザから確認してみてください。sample.phpをAzureに展開した後に、URL「http://{myurl}.cloudapp.net/sample.php/」(※{myurl}は各自の環境により変更してください)にアクセスすることで、確認できます。
Facebook-Twitter連携アプリの概要
いよいよここからは、Facebook APIを使ったPHPアプリを開発してみましょう。Facebookに登録されている情報をFacebook API経由で取得したうえで、この情報を使ってTwitterを検索するアプリを作ります。サンプルアプリとして、SAWAzure.phpを添付しているので、動かしたりソースコードを確認してみてください。
上の画像は、サンプルのSAWAzure.phpにWebブラウザでアクセスした画面です。画面上部に、「織田信長」「忌野清志郎」と2つのボタンがあります。このボタンに表示されている人物名は、Facebook API経由で取得して調べた、アプリ利用者の「あなたが尊敬する人」の名前です。別のユーザーがSAWAzure.phpにアクセスすると、別の名前のボタンができます。
アプリの実際の動作は、以下の通りです。
- SAWAzure.phpは、Facebook APIを用いて、SAWAzure.phpにアクセスしたFacebookユーザーの基本データを取得し、これを変数「$me」に格納
- 「$me」に含まれる情報のうち「あなたが尊敬する人」として登録されている情報を取得(「織田信長」など)
- FacebookからTwitter APIを用いて、Twitterと連携。具体的には、「あなたが尊敬する人」として登録されている人物名(「織田信長」など)を使って、Twitterを検索
こうして得られた結果は、Facebook内に表示されます。
なお、SAWAzure.phpは、Facebookアプリとして登録して使います。登録すると、専用のURLが生成されます(例えば「http://apps.facebook.com/{fb_tubuan}/」など。※専用URLの{fb_tubuan}は、各自の環境により変更してください)。
PHPを利用したFacebookアプリ開発の情報源
本稿では、Azure上でPHPを使ってFacebookアプリを開発する方法を解説しました。
Azureでは、ASP.NET、PHP、Perl、Javaなどの一般的な開発言語をそのまま利用して開発できます。サーバ側のプログラミング言語や通信手段は、アプリの要件に合わせて自由に選択できます。
PHPを利用してFacebookアプリを開発するための情報は、開発者向けWebサイト「facebook/php-sdk - GitHub」で確認できます。また、Facebookの開発者ブログには、Facebook APIを使った豊富なアイデアとサンプルが日々投稿されているので、参考にしてみてはいかがでしょうか。
著者プロフィール
田口 一博/スカイコード
主にマイクロソフトの技術を中心としたプログラマ兼システム管理者兼コンサルタント兼雑務係として従事。最近はWindows AzureとWindows Intuneで少しでもラクに楽しく生きていこうと企む毎日
著者プロフィール
ネットワーク関連機器メーカーのIT部門、データベース管理系パッケージベンダでのコンサルタントを経て、フリーランスとして独立。データベースのコンサルティングを中心にWebシステムの構築や開発なども行ってきたが、最近はWindows Azure上でPHPやMySQLなどの非マイクロソフトなものを動かすことばかり考えている
著者プロフィール
各種学校の講師兼フリーのシステムエンジニア。現在は、オープン系システムの開発者。「企業勤務電話交換機のOS機能を開発していたので、ファームとかメモリ管理とか聞くと血が騒ぎます」趣味は某オンラインゲーム
Copyright © ITmedia, Inc. All Rights Reserved.
関連記事
- アプリ開発者から見たmixiとFacebookの違い(@IT News)
- 書籍転載:Facebook SDK for iOSアプリ開発ガイド
iOS用のFacebook SDKを使って、iPhone/iPad/iPod touchアプリにさまざまなFacebook連携機能を盛り込む方法を解説します - 知らないと損するFacebookファンページの作り方
プロモーション活用で注目を集めるFacebookのファンページ。簡単に作れるので、この機会にファンページを開設してみよう! - WordPressを使ったFacebookページ作成と更新
企業が活用したいソーシャルサービス、Facebook。WordPressを使ってFacebookページを作る方法を紹介します - これぞソーシャル?Android用Facebookの評価、5斬
最近流行りのFacebookの不当なアプリ評価を斬るつもりが、いつの間にかFacebook自体について考え込むことに…… - OAuth 2.0でWebサービスの利用方法はどう変わるか
OAuthの現状と1.0の問題点、2.0での特徴などを解説し、2.0の例としてFacebookのAPIの利用例を紹介します - OAuth 2.0を使うソーシャルなAndroidアプリの作り方
OAuth 2.0のソーシャルなWeb APIを使った、Androidで動く簡単なネイティブ・アプリケーションの作り方を解説します