我想请求使用 laravel 验证人们的 ID。由于它非常有凭据,因此我希望只有当他们通过手机验证时才可以使用它。
因此必须防止通过邮递员请求验证 ID。
有没有办法检测请求是否是从邮递员发送的?
任何想法将不胜感激:)。
之前谢谢你
邮递员倾向于发送一个名为类似的标头postman-token
因此,如果存在这样的标头,您可以阻止该请求。
Edit请注意,可以在邮递员设置中关闭此标头
正如 @EdwardChew 所写,这并不妨碍人们使用 postman/curl/python/其他任何东西。向端点添加身份验证是最好的方法。
邮递员请求示例:
GET /api/car HTTP/1.1
Host: localhost:8080
Content-Type: application/json
cache-control: no-cache
Postman-Token: 05f5c492-3697-41b1-be0f-fb9bc4499b96
由于 postman 具有“代码”功能,因此如果请求被阻止,可以很简单地将其复制为curl命令:
curl -X GET \
http://localhost:8080/api/car \
-H 'Content-Type: application/json' \
-H 'Postman-Token: e37790ea-a3a5-40cf-ac4c-b80184801f94' \
-H 'cache-control: no-cache'
并删除该行Postman-Token
标头。我通常在尝试 API 时这样做。
如果你查看 Laravel 文档,有一个关于授权的部分:https://laravel.com/docs/5.8/api-authentication这将迫使用户添加一个标头令牌,如下所示:Authorization: Bearer 8fyew8f9yefo7o9yg98gyr
然后您就可以验证调用者
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)