javascript - 从开发工具中隐藏文件
问题描述
我对网络开发相当陌生。我已经使用 react.js 构建了一些 Web 应用程序,并且在后端涉足了 Firebase、Flask 和 Express.js,但仅限于开发环境中。我似乎找不到答案的一件事是如何防止最终用户通过 chrome 开发工具中的源文件查看重要数据。例如,隐藏包含 API 密钥的配置文件,或隐藏向数据库发送写入请求的 JavaScript 文件。另一个示例是发送 HTTP 请求或进行 API 调用的反应组件。我想隐藏请求/api调用的方式。谢谢!
解决方案
使您的数据库仅使用您的后端逻辑响应有效请求。例如在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;
}
推荐阅读
- c# - 为什么我不能使用 KeyedByTypeCollection 类?
- sass - 输出较浅和较深的颜色变体
- excel - 输入表单值更新时在工作表之间移动记录
- c - 如何正确计算 fork 创建的进程?
- sql - 如何为丢失的作业生成行?
- postgresql - 从 SQL 表的一行中挑选出一个元素
- excel - 初始化时包含 WebBrowsers 的 Excel vba 用户表单关闭 excel 而没有错误消息,并恢复文件。为什么?
- python - 如何在我的主页中添加显示图像
- javascript - 在显示加载屏幕 VueJS 之前等待一段时间
- xml - 为什么 XML 文档必须有一个根元素?