authomでTwitterのユーザー情報を全て取得する

シンプルなNode.jsのauth認証システムであるauthomと言うモジュールを使ってみた。
色々機能は少ないものの、Passport.jsみたいなブラックボックス感が無くて個人的には好き。

一部の情報しか返ってこない

authomでTwitterのログイン情報をリクエストしたが、なぜか以下のような情報しか返ってこない。

{ token: 'xxx',
  secret: 'xxx',
  id: '1061283374',
  data:
   { user_id: '1061283374',
     screen_name: 'p1ch_jp',
     x_auth_expires: '0' },
  service: 'twitter' }

たしか、TwitterのAPIからは、もっとたくさんのユーザー情報を引き出せたはずだ。

仕方なくモジュールの中身を物色してたら、READMEには書いてなかったextendUserProfileなるオプションを発見。これだ。

解決法

authom.createServerを設定するときに、このオプションをtrueに設定してあげると全情報を引き出せた。

authom.createServer({  
  service: "twitter",
  id: "xxx",
  secret: "xxx",
  extendUserProfile: true
});

めでたし。