django-rest-authでパスワードの変更のメールが飛ばない事象
今回はDjango REST frameworkを使用しているときに、django-rest-authでパスワードの変更のメールが飛ばない事象が起きるのはなぜなのかについてご紹介いたします。
django-rest-authでパスワードの変更のメールが飛ばない事象
django-rest-authでパスワードの変更のAPIを実装していたときのことです。
下記のQiitaの記事をもとに開発を進めたものの、サンプルプログラムを丸写ししてもパスワードのリセットのメールが飛ばなくて数時間あくせくしておりました。
https://qiita.com/fumuumuf/items/47c77eed8202e426def7
https://qiita.com/fumikoi/items/45dfaeaf4dc21eb56615
結論を言うと、Qiitaの記事に書かれているサンプルプログラムは何も間違っていませんでした。
間違っていたのは、私のdjango-rest-authのパスワードリセットに対する解釈です。
私はどのメールアドレスでもdjango-rest-authを使ってパスワードリセットができると思い込んでいたので、適当に私のメールアドレスで
rest-auth/password/reset
のエンドポイントを叩いていました。
しかし、django-rest-authの中身を確認したところ、DBの登録されているユーザーが持つメールアドレスに対してしかパスワードリセットのメールが飛ばないようです。
エラーメッセージなどが出ずに、
"detail": "Password reset e-mail has been sent."
と成功したようなメッセージがレスポンスとして返されていたのでまったく考えにもよりませんでした。
試行錯誤で数時間溶かしましたね。
ただ、おかげでdjango-rest-authの中身には詳しくなりました。
その意味ではかなり勉強になりました。
終わりに
今回はDjango REST frameworkを使用しているときに、django-rest-authでパスワードの変更のメールが飛ばない事象が起きるのはなぜなのかについてご紹介いたしました。
ディスカッション
コメント一覧
まだ、コメントがありません