簡體   English   中英

反應 NPM 構建和環境變量

[英]React NPM Build and Environment Variables

在部署 ReactJS + NodeJS 應用程序時,您如何處理 React 端使用的環境變量? 運行 NPM BUILD 會將任何秘密的 API 密鑰折疊到最終代碼中,使任何檢查源代碼的人都可以看到它。 在使用 npm 構建命令之前將 .evn 信息移動到位於服務器端的 .env 文件並不能解決問題。 我試圖四處搜索,但找不到任何實際的解決方案。

謝謝

謝謝大家,都非常有幫助。 我會將密鑰移動到服務器端並更改我的代碼工作方式以補償調整,另一個問題是谷歌地圖 API。 不能在代碼中移動,但可以限制為在 Google Cloud Platform 中使用的特定 IP 或 URL

https://cloud.google.com/blog/products/maps-platform/google-maps-platform-b​​est-practices-restricting-api-keys

您不能在客戶端使密鑰不可見。 即使從服務器接收它作為環境變量,密鑰也將被合並到構建中並且可以公開訪問。

為了讓你的 React 應用程序不會受到攻擊,唯一的方法就是將密鑰和秘密保存在后端。 也就是說,后端是唯一可以訪問密鑰和秘密的。 客戶端只發出請求而不存儲敏感數據。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM