callbackしたら、sessionが切れた
TwitterのOauth認証を実装していてつまずいたのでその話
sessionが保てない
Java servletとTwitter4jを利用して、TwitterのOauth認証を実装しようと思い
githubに上がっているTwitter4jのサンプルを見ながら実装していたら
???
は??
なんでNullPointer?
Chromeのデベロッパーツール開いて
session storage見たら何もないんだけどなんで
sessionの名前一覧をfor分で回しても何もないなんでや( ´・ω・`)
何がダメだったか
login: 0:0:0:0:0:0:0:1 callback: 127.0.0.1
結論から言っちゃうとこれでした
localhost:8080でアクセスしてたんだけど
名前解決したらipv6になっちゃってた
twitterのcallback urlにはlocalhostを指定できないので
127.0.0.1にしてたんだけど、まさかipv6になってたとは
ipv6からipv4のアドレスにcallbackしてたから
別ホストとして扱われて、sessionが切れてしまいました
結局、hostsファイルにドメイン勝手に作って
それをcallback urlに自作したドメイン設定して解決しました
(セキュリティ的にはダメです)
これで1日悩みました。。。
最初からrequest.getRemoteAddr()でipアドレス取得しとけばよかった