ReactiveOAuthではてなOAuth認証
主に個人的メモ。
WP7ではてなのOAuth認証をしようとしてReactiveOAuthを使うと、なんだかExceptionが出てうまくいきません。かねてから調べようと思いつつ棚上げして放置していたのですが、もばうぷでおなじみの@ChiiAyano先生の悲鳴(?)が...
良い機会なので調べてみました。
以下のように呼び出せば恐らく通るようになると思います。
ようするにはてな認証さんはoauth_callbackが足りないんだよ、と怒っていただけのようです。
うまく行かなかったらご一報ください。(ググってみた感じ、DropBoxやTumblrのAPIでも同様の様子?)
var authorizer = new OAuthAuthorizer(ConsumerKey, ConsumerSecret);
authorizer.GetRequestToken("https://www.hatena.com/oauth/initiate", new[] { new Parameter("oauth_callback", "oob") })
.Select(res => res.Token)
.ObserveOnDispatcher()
.Subscribe(token =>
{
requestToken = token;
var url = authorizer.BuildAuthorizeUrl("https://www.hatena.ne.jp/touch/oauth/authorize", token);
webBrowser1.Navigate(new Uri(url));
});
ReactiveOAuthさんはわりとぶっきらぼうにエラーを返してくるので、OAuthのエラー詳細がdebugしたいんだ! という方は私のfork版をビルドして組み込んでみてください。例外でサーバーが返してきたエラーが見れるようになると思います。
追記:
RequestTokenは取得できるものの、AccessTokenで再びエラーとの情報をいただき調査中です。