10
5

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 3 years have passed since last update.

omniauth-lineが`redirect_uri does not match`で失敗する。

Posted at

使用したライブラリはこちらです。
https://github.com/kazasiki/omniauth-line

組み込んだアプリでomniauth-google-oauth2を使用していて、omniauth-google-oauth2がomniauth-oauth2のバージョン1.6以上を要求していたので問題が起こりました。

詳しいエラーの内容と、根本的な問題はスタックオーバーフローに投稿し、的確な回答をいただいたのでそちらをご覧ください。

トークンをリクエストする時の必須パラメータredirect_uriに必要の無いパラメータが付与されてたのでredirect_uri does not matchになっていたわけですが、そもそもリクエスト組み立ててるの俺じゃねえし、どうすれば良いの?というところを解説したいと思います。

この辺でomniauth-oauth2はcallback_urlをオーバーライドしなくなり、omniauthのこの実装が使われるようになりました。

googleやfacebookはなんでうまくいくのかな?と思ってみてみたら各自オーバーライドしていました。

https://github.com/zquestz/omniauth-google-oauth2/blob/e2ace464ac2025bb287e78f7ac0a1249c73658b1/lib/omniauth/strategies/google_oauth2.rb#L102-L104
https://github.com/mkdynamic/omniauth-facebook/blob/5fdcad76fbef1fb6acc2cbc395c6d6d36563c7b1/lib/omniauth/strategies/facebook.rb#L81-L84

よく見るとPR出てましたね・・・
https://github.com/kazasiki/omniauth-line/pull/10
ただGoogleは1.6を要求するので1.6にアップしたPRを出しておきました。

https://github.com/kazasiki/omniauth-line/pull/16
一応出しましたが丸二年メンテナンスされてないっぽいのでマージはなさそう。

私のフォークしたmasterには反映してあるので良かったら使ってください。
https://github.com/gomo/omniauth-line

スタックオーバーフローでは的確な回答を直ぐいただいて助かりました。この場を借りてお礼をさせていただきます。スタックオーバーフローはコメント書こうとすると「ありがとうなどのお礼は書かないでください」と言われるんですよね。なんか日本人の文化に会わないというか、お礼したいと思いました。まあ▲ボタンを押して評価するのがお礼なんだと思いますが。

10
5
1

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
10
5

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?