抱歉,您的会话已过期。请刷新并重试。 - Laravel 5.8
Sorry, your session has expired. Please refresh and try again. - Laravel 5.8
我创建了一条路线Route::post('/ddos/store','DdosController@store');
我也有控制器
public function store()
{
dd("HERE");
$ddos = new Ddos;
$ddos->ip = $ip;
$ddos->details = $details;
$ddoss->save();
return $ddos;
}
通过 postman
进行测试 post 时,我不断得到 -
我想从我的控制器上看到文本 "HERE"。
我做错了什么?
在 dd
行执行之前执行了一个中间件。它被称为CSRF Protection。您可以通过在 app\Http\Middleware\VerifyCsrfToken
.
中添加此行来排除它
protected $except = [
'/ddos/store',
];
如果你坚持用邮递员发送csrf令牌,你可以创建测试用例并将其保存在环境变量中(我建议这样做)。这 link 可能会对您有所帮助。
Postman 未在请求中发送 CSRF 令牌,并且您的路由在应用 VerifyCsrfToken
中间件
的 web
路由组下
将您的路线移至 api
组或将其添加为例外
use Illuminate\Foundation\Http\Middleware\VerifyCsrfToken as Middleware;
class VerifyCsrfToken extends Middleware
{
/**
* Indicates whether the XSRF-TOKEN cookie should be set on the response.
*
* @var bool
*/
protected $addHttpCookie = true;
/**
* The URIs that should be excluded from CSRF verification.
*
* @var array
*/
protected $except = [
'ddos/store'
];
}
我创建了一条路线Route::post('/ddos/store','DdosController@store');
我也有控制器
public function store()
{
dd("HERE");
$ddos = new Ddos;
$ddos->ip = $ip;
$ddos->details = $details;
$ddoss->save();
return $ddos;
}
通过 postman
进行测试 post 时,我不断得到 -我想从我的控制器上看到文本 "HERE"。
我做错了什么?
在 dd
行执行之前执行了一个中间件。它被称为CSRF Protection。您可以通过在 app\Http\Middleware\VerifyCsrfToken
.
protected $except = [
'/ddos/store',
];
如果你坚持用邮递员发送csrf令牌,你可以创建测试用例并将其保存在环境变量中(我建议这样做)。这 link 可能会对您有所帮助。
Postman 未在请求中发送 CSRF 令牌,并且您的路由在应用 VerifyCsrfToken
中间件
web
路由组下
将您的路线移至 api
组或将其添加为例外
use Illuminate\Foundation\Http\Middleware\VerifyCsrfToken as Middleware;
class VerifyCsrfToken extends Middleware
{
/**
* Indicates whether the XSRF-TOKEN cookie should be set on the response.
*
* @var bool
*/
protected $addHttpCookie = true;
/**
* The URIs that should be excluded from CSRF verification.
*
* @var array
*/
protected $except = [
'ddos/store'
];
}