2
2

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 5 years have passed since last update.

Postmanで楽にログインできる Postman Intercepterには罠がある

Last updated at Posted at 2017-07-14

対象者

APIのログイン周りのリクエスト等を楽にしたいと思っている人
Chromeに複数のユーザでログインしてる人

環境

Postman for Chrome v5.0.2
Postman Interceptor v0.2.23

何が罠か

「Postman Intercepter」Cookie利用時のREST用ツール
こちらの記事を参考に、ログインしようとしているとどうにも違うCookieがPOSTされている気がした。

最初は、ドメインが同じ(開発環境だったのでlocalhost)、別のCookieが送られているのかと思った。
けど、よくよく考えてみると、Railsでは secrets.ymlsecret_key_baseで暗号化されてるので、別のプロジェクトのcookieを復号できる訳がないと思った。

いろいろ調査していると、Chromeで複数のユーザでログインしていると、Postman Interceptorが想定している動きをしない。

具体的にどういうバグかというと、ユーザA(デフォルトユーザ)とユーザBがいるとする。
Postman InterceptorをユーザBの方のChromeでオンにして、開発しているサイトにログインする。
PostmanでもInterceptorをオンにする。
何故か、ユーザAのCookieが確定で送られてくる。

この挙動を見ていると、デフォルトユーザのCookieがどんな場合でも送られているっぽい。

解決策

デフォルトユーザ(ユーザA)のChromeでInterceptorをオンにして、デフォルトユーザのChromeでログイン処理をする。

これだけのことなんだけど、結構時間を使ってしまった。
デバッグにncが便利でnc -l 9999 とかで サーバを立てて、そこにPostmanでリクエストするとCookieの値が見える。その値がChromeの開発者ツールで見れるCookieの値と違うならば、何かがおかしいということになる。

2
2
0

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
2
2

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?