0

私が構築している Web アプリでは、パスワードをリセットする方法が 2 つあります。ログイン ページ (ユーザーはまだログインしていません) からと、設定ページからです。

Laravel Fortify を使用してパスワードをリセットしています。ドキュメントによると、POST リクエストを送信するだけ/forgot-passwordで、電子メールが生成されて直接送信されます。

パスワードのリセット ビュー (POST フォームを使用したクラシック ブレード) からこれを行うと、正常に動作し、電子メールを受け取ります。

ただし、Vue コンポーネントである設定ページから、メール パラメータを使用して Axios を介して同じ URL に投稿リクエストを送信することでこれを達成しようとすると、メール302 Foundを受信せずにステータスが取得されます。

機能するパスワードを忘れた場合のリクエストブレードビューのコードは次のとおりです。

<form  action="/forgot-password" method="POST" class = "py-2 px-2" >
        @csrf
          <div class = "flex items-center justify-between">
            <i class = "fal fa-at px-2"></i>
            <input 
            type = "email"
            name = "email"
            class = "bg-gray-200  px-2 focus:outline-none w-full rounded-md"
            required/>
          </div> 
          <button type="submit" class = "flex items-center justify-between mt-2 bg-gray-100 w-full p-1">
            <span class = "pl-2 text-sm">  {{ __('Send Password Reset Link') }} </span>
            <i class = "fal  fa-chevron-right"></i>
          </button>
      </form>

そして、vueコンポーネントのメソッドについて(設定ページからリセットするため、機能していません)

requestNewPwd(){
        axios.post("/forgot-password",{email : this.user.email}).then((resp) => {
            if(resp.status == 200){
                this.reset_pwd_sent = true
            }
        })

    }
4

0 に答える 0