是否应该隐藏提取请求的链接



我正在使用React开发网站。说我用于提取请求的链接是http://localhost:3000/用于开发的用户,以及https://www.mywebsite.com/users进行生产。它是为了获取用户列表的获取请求,以便我可以在网站上显示。网站访问者只会通过浏览器看到生产版。或者,有人可能会以某种方式找到我的GitHub存储库。由于我的前端代码是公开的,因此他们可以看到他们可以使用该链接来获取用户自己列表。但是,如果提取请求是我只希望它通过网站的内容怎么办?我有一个更新用户余额的帖子请求。例如,https://www.mywebsite.com/change_balance。如果有人查看我的代码并自己成功提取请求,他们可以欺骗系统并保持所需的平衡。我应该在git存储库外的文件中有链接吗?

我将提取请求的链接放在文件中,然后将其导出到app.js,以便我不必以开发代码和生产代码来回更改。

链接文件

const links = ['http://localhost:3000', 'https://www.mywebsite.com'];
export default links;

导入后为单个链接声明一个变量,因此我只需要在切换到生产

时才能更改此变量
const link = links[0];

我使用异步的我提取请求之一等待

const response = await fetch(`${link}/users`);
// rest of the code

我的git存储库中有我的链接文件。如果我将其移到回购外,访问者如果使用浏览器检查代码,尽管它仍然在GIT历史记录中,但他们应该看不到它。我只是偏执吗?我不应该改变任何东西吗?我不想让我的github repo私有。

永远不要相信客户。无论。基本标头修改的IP欺骗是常见的。所有限制和验证都必须在服务器端。您应该安全地假设,如果您有公共API,它可以并且将从各种来源被调用。

一些解决方案:

  • 身份验证
  • CSRF(仍然可以在您的应用程序之外模仿(

最新更新