概述發送電子郵件:Laravel 5.1 - 內置密碼重置功能無法與令牌
我創建使用內置在系統中Laravel 5.1密碼重置功能,我已經按照說明它究竟是如何說here。
resources/views/emails/password.blade.php
中的視圖接收到一個變量$token
,其中包含密碼重置令牌以使用戶與密碼重置請求相匹配。在視圖裏,我有以下的代碼應該是建立在用戶設置的新密碼頁面的URL鏈接:
Click here to reset your password: {{ url('password/reset/'.$token) }}
問題:
它不會在發送電子郵件所有。但我已經意識到,如果我刪除最後一個結尾斜槓(見下文):
Click here to reset your password: {{ url('password/reset'.$token) }}
我收到類似http://mywebsite.com/password/reset35df435dfgdfg...
結論:
每當有password/reset/
之間的尾隨斜線和$token
,電子郵件不發送。即使我手動輸入網址。
爲什麼/
在$token
之前會影響正在發送的電子郵件?有任何想法嗎?
嘗試的解決方案:
url('password/reset', [$token]); //DID NOT WORK
action('Auth\[email protected]', ['token' => $token]); //DID NOT WORK
route('password/email', ['token' => $token]); //DID NOT WORK
url('password/reset/'.$token); //DID NOT WORK
不相信這一點。當然,一個常量字符串不能以* backward *斜線結尾,因爲它會避免結束語。那會導致解析錯誤。但是一個正斜槓?這應該沒有任何問題。 – Jason