Facebook アプリで懸賞をするには、テストユーザを作成します
今回の参考にさせていただいたのは
Facebook用のテストユーザーを作成する
です
書籍にも載っていましたが
こちらは curl を使うため
GUIで簡単にできるほうを選びました
自分のアカウントのアプリ一覧画面に移動
役割 の右側にある 役割を編集 をクリック
Test Users の右側にある 追加 をクリック
Number to Add で追加したい人数を指定します
月別: 2012年1月
Facebook の いいねボタン作成
facebook のソーシャルプラグインを「使うことで
facebook の機能を自分のブログにつけることもできます
一番有名なのは、いいねボタンです
ちなみに、このブログに設置すると以下のようになります
vmware player のバージョン違いでエラー
CentOs6 を Vmware Player にインストールするときに
emobile GP02 と YahooBB のどちらが早いか実験し
yahoo の方がインストールが早く終わったので
これを scp コマンドで
ネットブックに転送しました
自宅意外でも開発ができるように
現在 AmazonEC2 でのサーバー構築、
ネットブックへの開発環境構築
ipod や android でのサーバー管理のためのツールインストールなどを
行っています
今回の問題点はscp でコピーした
VMware Player のイメージが起動しないことでした
原因は単純でした
メインマシンの VM Player が ver4
ネットブックは Vm Player ver 3.15
これが原因でした
バージョンの確認をするには
VMware Player を起動し
Help > about VMware Player でヴァージョン確認できます
ちなみに、ヴァージョン違いで起動しない場合
Version のところが
unrecognized virtual machine Vmware
となっています
firefox の設定変更
Ubuntuをインストールし firefox を使ったのですが
設定がタブを閉じてしまうようになっていたため
タブを保存して終了するようにしました
参考サイトは
Firefox 4.0.1 タブ 保存して閉じる が出なくなり
です
firefox を機動しURL入力のところへ
about:config
として
Browser.showQuitWarning
の値がtrue になるようにします
false になっている場合されます
ダブルクリックすれば変更
AmazonEC2 で独自ドメイン
AmazonEC2 で独自ドメインを使う方法を調べています
以前、固定IPの取得をするため
Elastic IPs
を使い
HTTPS の設定でhははまるということがありました
このときには
グローバルIPではなく、ローカルIPを指定ということがわかり
解決しました
今回の問題は
独自ドメイン取得したものの
ドメインでアクセスできないという
問題です
valuedomainで取得し
数時間してからアクセスしようとしても
できないため
一度設定を変更し
グローバルIPでアクセスしたら
できました
ほかのサイトを参考にしてみたところ
どうやらDDNSの設定が必要らしいです
facebook PHP SDK で友達の住所取得
Facrebook クラスの
getLoginUrl メソッドの
scopeプロパティに
friends_location 指定して
Permissionを取得
次に
Facebook クラスの
apiメソッドの
path プロパティに
/me/friends/
を指定し、友達リスト取得
$friends=$facebook->api(‘/me/friends’);
最後に
取得した友達リストを使い
FB.apiメソッドで各個人の情報を取得します
facebookで自分の友達一覧を取得
Facebook で Graph API の
me/friends コネクションにアクセスすれば
自分の友達一覧を取得できます
PHP SDKでは
api メソッドの path プロパティに
/me/friends を指定
レスポンスデータで配列が帰ってくるので
ループ処理でパースすればOKらしいです
友達リストを取得するには
$friends =$facebook->api(‘/me/friends’);
というように指定します
Facebook の Permission 設定
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です
Ubuntu で Apache2 + SSL
facebook アプリをつくるのに
https 対応させる必要があるため
Apache2 + SSL の設定をします
UbuntuでApache2+SSLしてみる
を参考にさせていただきました
すでに apache2 はインストール済み
sudo a2enmod ssl
でSSL適用
sudo /etc/init.d/apache2 restart
で設定反映のため再起動します
念のため
nmap 192.168.10.248
で確認
PORT STATE SERVICE
22/tcp open ssh
80/tcp open http
443/tcp open https
902/tcp open iss-realsecure
となり、
443 ポート開放を確認
引き続き、証明書の作成です
sudo mkdir /etc/apache2/ssl
でディレクトリ作成
sudo make-ssl-cert /usr/share/ssl-cert/ssleay.cnf /etc/apache2/ssl/apache.pem
で証明書と秘密鍵発行
コマンドを実行すると
SSL 証明書で使うホスト名を入力してください。
これは生成される SSL 証明書内での「commonName」になります。
ホスト名:
とでてくるので localhost から
サーバーIPに変更します
今回は192.168.10.248
sudo cp /usr/share/doc/apache2.2-common/examples/apache2/extra/httpd-ssl.conf.gz /etc/apache2/sites-available
でファイルをコピー
cd /etc/apache2/sites-available
で移動してから
sudo gunzip httpd-ssl.conf.gz
で解凍
sudo vim httpd-ssl.conf
で設定ファイルを開き
Listen 443
を
#Listen 443
というようにコメントアウト
さらに
<VirtualHost _default_:443>
を
<VirtualHost *:443>
というように変更
DocumentRoot “/usr/share/apache2/default-site/htdocs”
を
DocumentRoot “/var/www”
ServerName www.example.com:443
を
ServerName 192.168.10.248:443
へ変更
192.168.10.248はサーバーIPです
SSLCertificateFile “/etc/apache2/server.crt”
を
SSLCertificateFile “/etc/apache2/ssl/apache.pem”
SSLCertificateKeyFile “/etc/apache2/server.key”
を
SSLCertificateKeyFile “/etc/apache2/ssl/apache.pem”
設定完了したら
sudo a2ensite httpd-ssl.conf
で設定ファイルを反映し
sudo /etc/init.d/apache2 restart
で apache2 再起動します
Graph API でユーザ情報取得
現在のユーザ情報を取得するには
Graph API の
/me オブジェクトにアクセスします
Graph API へアクセスするには
JavaScript SDKなら
FB.api
PHP SDK なら
apiを使います