【发布时间】:2016-01-08 05:14:05
【问题描述】:
好的,这是非常初学者,但我想要一个解释。在下面的“postReset”方法中内置的Laravel密码重置中,它指定了“token”......但是,当使用{!! csrf_field() !!} 在视图中,它生成为输入 name="_token"。匹配名称时 _ 是否算作实际字符?只是混淆了数据库迁移如何使用“token”,但是 csrf 字段将输入名称设置为“_token”。
public function postReset(Request $request)
{
$this->validate($request, [
'token' => 'required',
'email' => 'required|email',
'password' => 'required|confirmed|min:6',
]);
$credentials = $request->only(
'email', 'password', 'password_confirmation', 'token'
);
$response = Password::reset($credentials, function ($user, $password) {
$this->resetPassword($user, $password);
});
谢谢,
【问题讨论】:
-
_token仅用于跨站点请求伪造而不用于重置密码,尽管您需要将input名称为token用于重置密码。