我正在使用paytabs支付网关api。在该api中,必须提供重定向URL,以便在事务完成后,页面将自动重定向到您指定的重定向URL。网址是一个GET网址,但由于api的响应是POST类型,我无法使用get url。为了解决这个问题,我将该路由设为POST网址,但是通过使其成为post方法,我没有获得任何CSRF令牌。最后,我得到了这个问题。
TokenMismatchException in VerifyCsrfToken.php line 68:
有什么办法可以为单个POST网址禁用CSRF令牌功能吗?
- 尝试了 - 我根据你的建议做了这件事
class VerifyCsrfToken extends Middleware
{
protected $except = [
'signup/complete',
];
}
现在开始
Class 'Middleware' not found
来自the docs:
通常,您应将这些类型的路由放在RouteServiceProvider应用于
routes/web.php
文件中所有路由的Web中间件组之外。但是,您也可以通过将其URI添加到VerifyCsrfToken
中间件的$ except属性来排除路由:
class VerifyCsrfToken extends Middleware
{
protected $except = [
'stripe/*',
'http://example.com/foo/bar',
'http://example.com/foo/*',
];
}
您可以在csrf中间件中例外。转到app / http / Middleware / VirefyCsrfToken.php
class VerifyCsrfToken extends BaseVerifier{
protected $except = [
'route url1',
'route url2',
]
}
如何在项目文件夹/app/http/middleware/VerifyCsrfToken.php中使用localhost编辑
protected $except = [
//
'http://localhost/blog/return_url', // your url
];