You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

React.js:为何从.env文件读取API密钥需REACT_APP前缀?

React中.env环境变量的正确访问方式

之前误以为在.env文件中定义的API密钥只要以REACT_APP为前缀,访问时就能省略前缀直接用process.env.YOUR_KEY_NAME,但实际并非如此。

在Create React App(CRA)构建的项目中,只有以REACT_APP_开头的环境变量才会被打包工具注入到客户端代码里,访问时必须完整使用带前缀的变量名,否则会返回undefined。

举个例子:

  • .env文件配置:REACT_APP_YOUR_KEY_NAME=9999999999999
  • 正确获取方式:process.env.REACT_APP_YOUR_KEY_NAME
  • 错误获取方式:process.env.YOUR_KEY_NAME → 结果为undefined

以下是正确使用环境变量的代码示例:

const FetchData = async () => {
  try {
    const cache = localStorage.getItem('apiData');
    if (cache) {
      return JSON.parse(cache);
    } else {
      const response = await fetch(`${url}?key=${process.env.REACT_APP_API_KEY}`);
      const jsonData = await response.json();
      localStorage.setItem('gameData', JSON.stringify(jsonData));
      return jsonData;
    }
  } catch (error) {
    console.error('Error occurred:', error);
    return null;
  }
};

export default FetchData;

内容的提问来源于stack exchange,提问作者AliH

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.16 15:47:04