FacebookAppを作る デスクトップ版
デスクトップアプリも作ってみる
Facebook Developer Toolkitを使うと.NET系(C#/C++/VB.NET)でfacebookアプリが作れる
http://www.codeplex.com/FacebookToolkit
dllをbinaryで落としてきて、Facebook.Controls.dllとFacebook.dllを参照に追加して
まず認証してみよう
dllをusingして
using Facebook.API; using Facebook.Entity;
API_KEYなどを設定
private FacebookAPI api; api = new FacebookAPI(); api.IsDesktopApplication = true; api.ApplicationKey = "your-api-key"; api.Secret = "your-api-secret";
認証フォーム開く。メアドとパスワード入れて認証する。WebBrowserControlが埋め込まれた新しいFormがポップアップしてその中でpassword打ち込ませるのでかなり気持ち悪い。普通にフィッシングできると思う。デフォルトブラウザで認証画面出せる方法があったらいいんだが・・・
api.ConnectToFacebook();
適当に例外はcatchする。
眠かったので前述のRails版FacebookApp http://d.hatena.ne.jp/shokai/20080624/1214300680 のapikey&secretを使っていたのに気づかなくて、IPアドレス制限を自分でかけていたのでずっとログインできなくて30分悩んだ。
ためしに友人リストを取得する。他にGetUser()などもあった
ICollection<User> friends = api.GetFriends(); foreach (User friend in friends) { Console.WriteLine("friend: " + friend.FirstName + friend.LastName); }
こんな感じで一通りのAPIはwrapされてる。
ちなみに
api.LogOff();
これログオフ出来てない気がする。次回起動時にパスワードフォームすっとばしてAuthToken取って来てた。
なんか使いやすいライブラリだけど細かいところに違和感がある