Facebook の Permissions には3種類あり
User Data Permissions
Friends Data Permissions
Extended Data Permissions
があります
アプリは動作に必要なパーミッションをユーザに提示して承認を求めます
提示と承認の処理は
PHP SDK の場合
getLoginUrl() で行います
ちなみに、誕生日情報にアクセスするなら
user_birthday の権限が必要になります
これも
PHP SDK
の場合
getLoginUrl メソッドの
scope プロパティで設定します
複数のPermissions を設定したいなら
user_birthday,publish_stream のように
,で区切って指定すればOKです
カテゴリー: Facebook
Graph API でユーザ情報取得
現在のユーザ情報を取得するには
Graph API の
/me オブジェクトにアクセスします
Graph API へアクセスするには
JavaScript SDKなら
FB.api
PHP SDK なら
apiを使います
facebook PHP のSDK の処理
Facebook の PBP SDK を使った処理の流れです
PHP SDK ファイルをロード
Facebookクラスのインスタンス生成
してアプリ初期化
getUserメソッドでログイン状態を
チェック
未ログインならログイン処理
ログイン済みならアプリ本体の処理
を実行
流れとしては
こんなかんじです
ただし、PHP SDKを使うならシークレットキー
の指定が必須になります
もう少し詳しく流れを書くと
require_once
を使い
PHP SDKを読み込んで
次に
new を使い
facebookクラスのインスタンス生成
アプリへのログイン状態をこの
getUser メソッドで取得
このメソッドは
ログインS済みなならユーザIDを返し
未ログインなら0が返る
これを利用して、IFbぶ文でログイン判定をします
続いてログイン処理
これには
getLoginUrl() を使用
PHP SDK ver 3.0 以降では
redirect_url に
Facebook 上での
キャンバスページのurlを
指定しないとダメ
これをやらないと
ログイン後にフレーム解除状態で
アプリが表示されます
facebook PHP SDK の使い方
https://github.com/facebook/php-sdk
へアクセスし
zip をクリックしてファイルをダウンロード
facebook-php-sdk-v3.1.1-18-g70030bb.zip
がダウンロードできるファイルになります
cd コマンドで移動
cd ~/ダウンロード
unzip facebook-php-sdk-v3.1.1-18-g70030bb.zip
で解凍
次に、テストするために
ドキュメントルートディレクトリに解凍したファイルの中身を移動します
ドキュメントルートは
サーバー関連を操作するときに使いますので
検索するといろいろでてきます
ubuntu なら
/var/www/
xampp なら
/opt/lamp/htdocs/
がこれにあたります
私の場合
/var/www/facebook/
となっていますので
sudo cp -rp ~/facebook-php-sdk-70030bb/* /var/www/facebook/
これでOKです
試しにサンプルを使って確かめてみました
今回も
基礎から学ぶfacebook アプリ開発
に載っていたソースを使いました
今回の注意点は
‘secret’ => ‘シークレットキー’,));
の部分で
シークレットキーを
アプリの秘訣にかかれている数値に変えるということです
Facebook サンプル実行
キャンバスURLを設定したら
次に
詳細設定を変更します
Sandbox Mode:
を有効にすることでアプリが非公開になります
逆に、無効にするとアプリが公開されます
ここまで行ったら、設定を保存します
アプリ作成をゼロからだと確認するときに挫折しやすいので
今回は、
のサンプルを使いました
最近の書籍では
ソースがダウンロードできます
(書籍についているパスワードが必要なときがあります)
まずは、感覚をつかむため
http://www.c-r.com/
から
サンプルをダウンロードし
unzip sample.zip
で解凍
次に、
sudo mkdir /opt/lamp/htdocs/facebook/
でディレクトリを作成
sudo cp -p ~/ダウンロード/CHAPTER02/006/index.html /opt/lamp/htdocs/facebook/
でコピー
vim /opt/lamp/htdocs/facebookt/index.html
で
15行めの
appId: ‘アプリケーションID’,
のアプリケーションIDを
App ID の数値に書き換え保存
これで
サーバーIPアドレス/facebook/index.html
でアクセスすればアプリが実行できます
ちなみに、今回は XAMPP で行いました
netbook で facebook アプリ開発
https://developers.facebook.com/apps
へアクセスし
新しいアプリの作成をクリック
App Display Name
にアプリの表示名
App Namespace
にアプリの名前空間
を書き込みます
このあたりの参考には
最新版】Facebookページ Welcomeページの設定方法(iframe)
http://www.gb-jp.com/blog/social/1470.html
が参考になります
設定したアプリ名などが有効なら
vaid とされます
vaid は有効
App Namespace も問題ないなら
Available となります
available は利用可能
認証を済ませたら
次に
アプリをFacebookに結合する方法を選択してください
の中から
Facebook上のアプリを選択し
キャンバスURL
と
セキュリティで保護されたキャンバスURLを
入力します
基本的にはレンタルサーバーなどの
ドメインですが
XAMPPでもできます
Facebook アプリ作成
Facebook アプリをつくるべく
資料を探してきました
今回は
基礎から学ぶ facebookアプリ開発
基礎から学ぶ facebookアプリ開発
Facebook アプリ作成で必要な curl
第四回Web APIを使ってWebアプリケーションを作る勉強会
に参加しました
とはいっても、仕事の関係上、録画していただいたものをみながら行っています
今回、つまづいたところとしては、
SSL通信可能なサーバーを用意するところでした
実際にはSSL通信可能なサーバーは、以前からいろいろと
VMware Player で構築してあったので、これについては問題なくできたのですが
問題は、ここではなく
その後のアプリへのアクセスでおきました
SSLの証明書作成や Web サーバー構築などについては問題ないのですが
キャンバスページへアクセスすると
Fatal error: Uncaught exception ‘Exception’ with message ‘Facebook needs the CURL PHP extension.
というエラーが発生します
原因は、エラーにあるように、curlがないためでした
このため、以前 VmwarePlayer で作成した fedora13 を使うことにしました
この仮想マシンには XAMPPでいろいろと 日経Linux を参考に
Web アプリをインストールしてありましたので、こちらを使うことで解決しました
XAMPP で WordPress
Webメールアプリ RoundCube
スクリプトを混ぜたサーバー構築実験
Piwigo でWeb フォトアルバム
ClipBucket
といった過去に掲載した内容がこれには構築してあるため、実験には最適でした
なお、今回の勉強会では
レンタルサーバーを用意して行っていましたが、XAMPPや自宅サーバーでも
再現はできるようです
(今回はXAMPPで行いました)
xampp で実験する場合、
/opt/lampp/htdocs/
の中に
mkdir /opt/lampp/htdocs/facebook
として
facebook というディレクトリを作成
必要なファイルの編集が終わったら、FTPソフト、FileZila
もしくは scp コマンドで転送することですすめることができます
今回の場合、キャンパスURLには
http://192.168.10.141/facebook/
セキュリティで保護されたキャンパスURLには
htts://192.168.10.141/facebook/
というようにしました
セキュリティで保護されているほうは
https となりますのでご注意
ちなみに、XAMPPの場合、permission 関連でエラーになることがあるので
そのときには
chown で権限を変更することが必要になります
今回は、scp でコピーしたときに root 権限になっていたので、
URLへアクセスしてもエラーになりました
対策として
chown wiki -R /opt/lampp/htdocs/facebook/
として
権限を root から一般ユーザへと移す必要がありました
Facebook 開発者登録
第1回 Facebookアプリを開発する前に必要な予習と準備とは
と、ネットでの検索を使って登録してみた
基礎から分かる、Facebookアプリの作り方
にも載っているけど、
ITPro のほうが内容が新しいのでいいかもしれない
ただし、こちらの記事の内容は
PHPと Eclipse プラグインが必要
Windows Azure SDK が必要
Facebook アカウントがすでに取得済みという条件付き
今回は、開発者登録のみなので、
facebook にログインして、一番下にある 開発者 をクリック
次に、画面の上にある アプリ をクリック
パスワードを聞かれるので Facebook のパスワード入力
最初にログインしたときには、
基本データへのアクセスを許可するか聞かれるので、許可する
をクリック
これで、開発者登録は完了となります
ただし、いままでやってきたものとは大きく違うところは
アプリを登録するのには条件が難しいかもということです
アカウントを作成してから一定期間以上経っていること
そして、
アカウントに携帯電話、またはクレジットカード情報を登録する
この2つが必要な条件になっています
しばらくは、Facebook アプリとマーケティングの勉強のため
facebook を使って見ようと思います