我在create react应用程序中制作了一个天气应用程序.如何隐藏API密钥以便提交给GitHub?

现在 keys 在应用程序中.js:

推荐答案

不幸的是,在React客户端中保留任何密钥,即使您使用的是gitignore和.env文件,也是不安全的.正如@ClaudiuCreanga所指出的,React环境变量嵌入到构建中,可以公开访问.

实际上,您应该只在后端保存API密钥或机密,例如Node/Express.您可以让客户机向后端API发送请求,后端API随后可以使用API密钥进行实际的API调用,并将数据发送回客户机.

Reactjs相关问答推荐

是否可能有不同的加载器用于路径有查询参数和没有查询参数,或者在React Router 6中添加它们时有条件地跳过一个加载器?

无法在jest中发布行动

无法使用Apollo客户端GraphQL设置Next.js 14

404使用GitHub操作部署Next.js应用程序时出错

为什么安装FLOBIT后,所有的输入FIELD现在都有一个蓝色的轮廓?

有没有办法将MUI网格元素与Flex-Start对齐?

有没有一种惯用的方式来接受特定的子元素?

如何在NextJS中仅在刷新页面和页面淡出页面过渡时添加全屏加载器

可以使用mode.css/mode.scss引用常规的类名吗?

我如何在不被 destruct 的情况下将导航栏固定在顶部?

UseEffect 似乎不适用于页面的首次渲染

在reactjs中刷新页面时丢失状态值

React-router-dom的链接不改变路由(ReactRouter6)

如何修改 react/jsx-no-useless-fragment 规则以允许 <>{children}

文本的几个词具有线性渐变 colored颜色 - React native

我正在try 将一组加载程序函数发送到我的路由,它抛出一个错误 Handler is not a funtion in a reactJs application

react-router v6 中的 BrowserRouter 和 createBrowserRouter 有什么区别?我可以在不使用数据 API 的情况下使用 createBrowserRouter 吗?

React js中不记名令牌中的空间问题

下拉菜单在 AppBar 中未正确对齐

a.active 类在导入 x.scss 文件时有效,但在使用 x.module.scss 时无效