0

我正在构建一个 React 地理待办事项列表,类似于这个。我使用 Mapbox API 作为映射组件,但我想将其切换到 HERE 的 Map Image API。我已经在我的应用程序上设置了地图,但我想将我的app_id和隐藏app_code.env我之前创建的文件中。这可能吗?我知道也可以限制哪些域可以访问密钥/代码,但我想将密钥隐藏在.env文件中以便安心。

这是我的.env文件(当然没有密钥):

REACT_APP_HERE_ID={my app_id}
REACT_APP_HERE_CODE={my app_code}

这是我将它引入我的应用程序的地方:

const app_id = process.env.REACT_APP_HERE_ID;
const app_code = process.env.REACT_APP_HERE_CODE;

当我console.log app_idapp_code时,他们都回来了undefined。我以前从 Mapbox 获得的 API 密钥在我的.env文件中运行良好,但我似乎无法以相同的方式从 HERE获取app_idand 。app_code

我错过了什么吗?限制哪些域可以使用我的 id 和代码更容易吗?

4

1 回答 1

0

我假设您正在使用“react-scripts”模块来构建/启动您的项目。同样根据上述描述,我可以看到您使用正确的前缀“REACT_APP_”来声明 .env 文件中的任何变量。

只需使用命令重新构建应用程序:

npm run-scripts build

或者只需使用以下命令重新启动您的应用程序:

npm react-scripts start

我认为它应该可以正常工作。

而且,是的,您可以限制哪个域应该使用您的 AppID 和 AppCode,使用https://developer.here.com/提供的“针对特定域的安全应用凭据”功能,就在您看到您的 id 和代码。

希望这可以帮助。

于 2019-01-04T07:05:22.760 回答