我一直在尝试从我的.env文件中获取我的API密钥,该文件位于我的Vite应用程序的文件夹的根目录下,并将其转换为我想要进行抓取的JSX文件,但每次我使用process.env.{MY_VARIABLE_NAME}
时,浏览器控制台都会返回一个错误:
参考错误:进程未定义
我尝试从API获取数据的行:
const api = await axios.get(`https://api.spoonacular.com/recipes/random?apikey=${process.env.RECIPE_API_KEY}`)
我检查了周围,我已经尝试安装dotenv,它仍然不起作用
任何人都可以帮助这一点,如果有任何更多的信息,将需要,我可以提供它。
4条答案
按热度按时间uurity8g1#
process对象在客户端JavaScript环境中不可用,如果你在服务器端运行时运行它,它会工作。
idfiyjo82#
您可以尝试将其赋值给变量,然后将其用作:
我想这会有用的
ldxq2e6h3#
如果你没有使用React应用程序或Webpack这样的打包器,并且你想直接在客户端使用环境变量而不需要任何构建过程,你可以在服务器的响应中公开环境变量,并在客户端JavaScript代码中访问它们。
v8wbuo2f4#
在做了一些研究之后,我发现,由于我使用的是Vite React应用程序,因此应该使用
import.meta.env.{MY_VARIABLE_NAME}
来访问.env文件中的变量,而不是process.env
。我必须在我的.env文件和我试图访问API密钥的地方的变量名的开头添加一个VITE_前缀。