Top > Blog Index > Twitter - OAuth サンプル

Twitter - OAuth サンプル

Groovy 100本斬り企画で書いたコード。 oauth-signpost というライブラリを使うと楽。

tw_oauth.groovy

PINコードは自動取得したい

OAuthでは、いったん Twitter の認証ページに飛んで 第三者が書いた Twitter アプリの使用をユーザが許可する プロセスを経て PIN コードが表示されます。

このPINコードをコピペなどして最終的に必要なアクセストークンを 手に入れるわけですが、 Android上で動くアプリなどでは、PIN コードのコピペが面倒なことが想定されます。

そこで、PIN コードページが表示されたらそれをパースしてPINコードを取得する code snippet をメモしておきます。

@Grab(group='nekohtml', module='nekohtml', version='1.9.6')
import org.cyberneko.html.parsers.SAXParser

def pinCodeGetter = { 
  def r = null
  new XmlSlurper(new SAXParser()).parse(it).'**'.findAll{
    if( it.name() == 'DIV' && it.@id =~ /oauth_pin/ ){ r = it.toString().trim() }
  }
  r
}

問題はこれをどうやって使うかだ...