如何在电子邮件内容中编码电子邮件地址



我使用的是laravel 8。

我想发送重置密码链接。但当我想将电子邮件地址附加到令牌作为参数时:

public function toMail($notifiable)
{
return (new MailMessage)
->subject('.....')
->action('Reset', url('password/reset', $this->token.urlencode('&email='.$notifiable->email)))
}

电子邮件内容的结果是:

http://****/password/reset/326e15aad30c49acc55d39ff6983ccf33a838311b48c00318bc23e1a354b2c5b%2526email%253DS.M_Emian%2540yahoo.com

此输出无法从javascrpit解码。

您可以使用Laravel 8中的现有功能发送密码重置链接,如所示

use IlluminateSupportFacadesPassword;
$status = Password::sendResetLink(
$request->only('email')
);

有关密码重置的更多信息

最新更新