validation - 如何防止经过身份验证的用户通过 POSTMAN 发送类似请求?
问题描述
我正在使用 MEAN 堆栈开发一个简单的网站,该堆栈为登录用户提供完成的任务,并向后端发送与他们在该任务上的表现相对应的分数。用户可以跳到下一个任务,在这种情况下不发送分数。问题是:如何区分用户作弊和通过 POSTMAN 上的 POST 请求发送分数(通过更改 POST 值以增加分数)和由我的前端代码创建的 POST 请求。如何解决这个问题?
解决方案
欢迎来到 Stackoverflow,要检查请求是由 POSTMAN(本地)还是由您的后端(由您的前端调用)发出的,您只需检查请求 IP 是否是您的服务器。
这是一个白名单解决方案
MEAN Stack 使用 NodeJS,因此您可以使用:
request.connection.remoteAddress
编辑 :
您可以在您的前台或邮递员发送请求时在您的标头中放置一个特殊参数,并在收到时检查它
推荐阅读
- python - 在命令行上运行 Python 程序时跳出循环
- java - 未找到扫描仪变量
- azure - 即使 repo 中存在 package.json 文件,在 azure devops 中构建也会失败
- c# - 如何在代码 C# 中更改 Unity 切换背景图像
- c# - EF Core 3.1 / EF Core 5.0 中的 GroupBy 不起作用,即使是最简单的示例
- google-slides-api - 预检请求是否计入使用限制?
- php - 在 Codeigniter 模型中排序
- html - 不要在窄窗口中显示 Read the Docs Sphinx TOC
- mysql - 尝试完全加入 MySql 中的两个表
- google-apps-script - 当我在 G-Suite 市场上更新 GAS 插件时,它会自动更新吗?