我正在使用paytabs支付网关api。在该api中,必须提供重定向URL,以便在事务完成后,页面将自动重定向到您指定的重定向URL。网址是一个GET网址,但由于api的响应是POST类型,我无法使用获取网址。为了解决这个问题,我将该路由设为POST网址,但是通过使其成为post方法,我没有获得任何CSRF令牌。最后,我得到了这个问题。
TokenMismatchException in VerifyCsrfToken.php line 68:
我是否有办法仅为单个POST网址解除CSRF令牌功能?
- 建议 - 我根据你的建议做了这个
class VerifyCsrfToken extends Middleware
{
protected $except = [
'signup/complete',
];
}
现在正在
Class 'Middleware' not found
答案 0 :(得分:5)
来自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/*',
];
}
答案 1 :(得分:0)
你可以在csrf中间件中例外。转到app / http / Middleware / VirefyCsrfToken.php
grep -w "H2" <file name>
答案 2 :(得分:0)
关于如何使用本地主机 在您的项目文件夹/app/http/middleware/VerifyCsrfToken.php编辑
import hashlib
hash_object = hashlib.sha256(<FEEDPARSER_RESPONSE>)
hex_dig = hash_object.hexdigest()