是否可以从.env获取多个随机api密钥?

问题描述 投票:0回答:2

在我的 .env 文件中有这样的内容:

GOOGLE_MAP_API=AIzaSyByfXuuwxOIaWlefhSxqhMweF-0
Another_API_KEY=5893978af2537e042beb233b1

我想创建一个 .env 文件,其中“Another_API_KEY”是从多个 api 密钥列表中随机选择的。

类似这样的:

GOOGLE_MAP_API=AIzaSyByfXuuwxOIaWlefhSxqhMweF-0
    var r_text = new Array();
 r_text[0] = "a3219d4e2772db6e34c62144b27f";
 r_text[1] = "5bbe61fe6db548e665a49663eba2";
 r_text[2] = "d74ae61790a9937e3f6d5d3ddc83";

    var nn = Math.floor(3 * Math.random());
    var Another_API_KEY = r_text[nn]

但这不起作用。是否可以从 .env 文件中的 React JS 应用程序列表中获取随机密钥?

reactjs api
2个回答
0
投票

.env
文件存储字符串,因此无法在其中运行 Javascript。

但是,您可以做的是存储您想要从中随机选取的所有密钥

.env
,并且当您在应用程序中使用它们时,您可以选择其中一个。

.env

GOOGLE_MAP_API=AIzaSyByfXuuwxOIaWlefhSxqhMweF-0
RANDOM_KEYS="a3219d4e2772db6e34c62144b27f 5bbe61fe6db548e665a49663eba2 d74ae61790a9937e3f6d5d3ddc83"

然后在你的代码上:

// Choose random key from all options
const RANDOM_KEYS_ARRAY = process.env.RANDOM_KEYS.split(" ")
const RANDOM_KEY = RANDOM_KEYS_ARRAY[Math.floor(RANDOM_KEYS_ARRAY.length * Math.random())]

这是一个包含工作代码的沙箱: https://codesandbox.io/s/getting-random-key-from-env-xuup4r


0
投票

我成功了。

我的文件app.js,其中的命令是从.env获取api密钥:&appid=${process.env.REACT_API_KEY}

我删除了:process.env。 并插入

'var r_text = new Array();
r_text[0] = "456afa82537e042beb233b25";
r_text[1] = "s54667e042b33b1fa525";
r_text[2] = "456a82537e042beb233b525";

var nn = Math.floor(3 * Math.random());
var REACT_API_KEY = r_text[nn];'

而且它有效。谢谢你

天气

© www.soinside.com 2019 - 2024. All rights reserved.