java script Test Console でウォール投稿

javaScript Test Console でウォール投稿してみます
https://developers.facebook.com/tools/console/
へアクセスし
参考資料 > Tools > JavaScript Test Console
とクリックしていきます
次に example >fb.ui の中にある feed をクリックすると
ダイアログがでてくるので
何かメッセージを書き込み、シェアをおすと
実際にウォールに投稿されます
ちなみに、アカウント取得してログインしていないと書き込まれません

OAUthとシングルサインオンの違い

シングルサインオンとは
Lightweight
Directory
Access
Protocol
通称LDAPというディレクトリサーバーに
IDとパスワードを集約することによるID管理の一元化のことです
アルタ端末かrなおアクセスに
一度どいっこかのLDAPサーバーで認証したあとは
同じLDAP認証サービスを利用するサーバーへのアクセスは
認証をスキップできるというものです
この場合の認証は
・認証 authentication
・認可 authorization
の両方の意味になります
そして webサービスでのID統合されたものがOpenID です
OpenID はOpenIDプロバイダと呼ばれるサーバーに
IDを保持しておくことで
そのIDによるログインでサービスを受けることができるようにする規格です

Facebookのユーザ認証OAuth

2012 1月以降 Facebook では
ユーザ認証とアプリのアクセス許可に
OAuth2.0を使用
詳しくは
Facebook Develoers OAuth 2.0 and HTTPS Migration
を参考にします
URLは
https://developers.facebook.com/docs/authentication/
OAuth は
認証方法の1つで
Facebook 以外では mixi twitter などでも使われます
特徴としては
サードパーティサービスはパスワードを扱わない
サードパーティサービスに対して利用可能な機能を持たせることができる
というものです
他にいままで使われたものもありますが
セキュリティの問題からあまり使わないです
まずBasic 認証
平文でパスワードが流れます
Form認証
SQLインジェクション
XSSの被害にあいやすい
ほかにもありますが、なるべく使わないようにしています

JavaScript Test Console のサンプルスクリプト

javaScript Test Console には37種類のサンプルがあります
大きく分けると
・認証
アカウント情報の表示、パーミッションをつかったログイン
・Canvas
Canvas型アプリの場合の Canvasの設定
・API
Facebook Graph API を利用した情報の取得
・UI
Facebook Dialog を利用したポップアップ画面の表示
・XFBML
XFBMLを使ったソーシャルプラグインの表示
例として いいね ボタンとか
あと、スクリプトのログの出力は
サンプルソースの右にでます

javascript test console のサンプル その2

引き続き、サンプルの作成の紹介です
tools のところにある
java script test console をクリックして
再び
Example をクリックし
auth の
account-info (アカウント情報)
をクリックすると、
自分のアカウント情報を表示するスクリプトが表示されます
ちなみに、ログイン状態ならスクリプトが実行され
自分の写真と名前が表示されます

javascript test console のサンプルを動かす

Javascript test console を使うには
https://developers.facebook.com/tools/console/
へアクセスし
参考資料をクリック
次に Tools をクリックし
Learning how to use the APIs
の下にある
JavaScript Test Console
をクリック
Examples つまり例題 をクリックして
auth のところにある
login-and-logout
をクリックすれば
ログインとログアウトするサンプルソースコードが表示されます

ubuntu の lha 解凍時のエラー対処

10日でおぼえるFacebookアプリ開発入門教室
を購入し
サンプルファイルを
http://www.shoeisha.com/book/hp/10days/down/index.html#9784798125138
からダウンロードして
解凍したのですが、開発環境が Linux (ubuntu 10.10)
のため、
lha -e Facebook10.lzh
を実行すると
ディレクトリのパスがうまく解凍されたときに処理されず、妙なファイル名となっています
このままでもできなくはないのですが
対処しておきたいので検索
lha ubuntu 解凍
で検索すると意外に簡単にみつかりました
今回の参考サイトは
lzhを解凍するとフォルダが消える場合がある
です
リンクがはられていたので、
IKOINOBA APT/YUM repository
へリンクして、みたのですが、最近、10.10はサポート終了したためか
ーが引かれていたので
代わりに ubuntu11.10 で行いました
sudo add-apt-repository ppa:ikoinoba/ppa
でレポジトリ追加して
sudo apt-get update
でパッケージソースアップデート
sudo apt-get upgrade
でパッケージをアップデート
これで、
lha -e Facebook10.lzh
を実行しても正常に解凍できました
ちなみに、これがわからなかったときには
一度
VMware Player で windows で解凍して
Filezilla でSFTP転送してました

Facebook Android SDK ダウンロード

facebook Android ADK をダウンロードしてみました
まず
https://developers.facebook.com/docs/reference/androidsdk/
へアクセス
これがドキュメントなので、困ったらこれを確認(英語だけど)
次に
https://github.com/facebook/facebook-android-sdk
へアクセスし
facebook android sdk をダウンロード
zipのアイコンをクリックしダウンロードします

Facebook PHP SDK の関数

Facebook PHP SDK は
web server を利用したfacebook アプリ開発に必要になるSDKです
具体的には
Facebook Graph API などを使うときに必要です
PHP SDk に含まれるのは
CRTファイル
SSLのサーバ正銘ファイルで
Graph API に https でアクセスするのに使う
PHP ファイル
facebook へアクセスするクラス
という中身になっています
以下は、関数とその内容です
まずは
Facebookクラスから
api
API呼び出し
getAccessToken
アクセストークン取得
getApiSerect
秘密コード取得
getApiId
APP_IDを取得
getLoginStatusUrl
ログイン状態に合わせたリダイレクト先URLを知る
getLoginUrl
ログインのためのURL取得
getLogoutUrl
ログアウトのためのURL取得
getSignedRequest
Signed Request パラメータの内容取得
getUser
ログインしているユーザのIDを取得
setAccessToken
アクセストークンの設定
set ApiSecret
秘密コードの設定
setAppId
APP_IDの設定
setFileUploadSupport
ファイルアップロード機能の設定
useFileUploadSupport
ファイルアップロード機能の使用を確認
続いて FRacebookApiExcerption クラス
getResult
APIの呼び出しで
例外が発生したとき例外内容を取得
fetType
例外の型を取得
基本的には java とかに近いかも
exception は大抵は例外処理
get と set はほとんどセットだと思うし

curl について

curl についてちょっとメモです
curl とは
FILE
LDAP
POP
SMTP
SCP
などの様々なサーバーとの
データ転送プロトコルに汎用的にアクセスするよう
設計されたURL転送ライブラリのプロジェクトになります
http://
などのURLフォーマットにしたがって記述するデータポイントに対して
処理を行います
ライブラリ自体は
libcurl と呼ばれ
Linux には curl コマンドがあります
なぜ curl かというと
Facebook PHP SDK で
HTTPS アクセスするのに libcurl が必要なためです
ちなみに、facebook のSDKが標準提供されていない Ruby の場合
Net::HTTP

Net::HTTPS
Physon なら
urllib2 などのライブラリやモジュールを使って
Facebook Graph API へアクセスします