首页 > 解决方案 > 从开发工具中隐藏文件

问题描述

我对网络开发相当陌生。我已经使用 react.js 构建了一些 Web 应用程序,并且在后端涉足了 Firebase、Flask 和 Express.js,但仅限于开发环境中。我似乎找不到答案的一件事是如何防止最终用户通过 chrome 开发工具中的源文件查看重要数据。例如,隐藏包含 API 密钥的配置文件,或隐藏向数据库发送写入请求的 JavaScript 文件。另一个示例是发送 HTTP 请求或进行 API 调用的反应组件。我想隐藏请求/api调用的方式。谢谢!

标签: javascriptwebserverfilesystemsbackend

解决方案


使您的数据库仅使用您的后端逻辑响应有效请求。例如在firebase中,使用firebase规则来限制读写访问

firebase 规则示例,任何人都可以创建一个帐户,(可能有更好的方法来只允许 create if request.auth.uid !=null)用户可以在登录后更新他们的信息,但不能更新其他任何人的信息,并且具有 admin 自定义声明的用户可以更新任何人的信息

match /users/{fileName} {
allow read: if request.auth.uid != null;
allow create: if true;
allow update, delete: if request.auth.uid == fileName ||
request.auth.token.admin == true;
}

推荐阅读