在 NodeJS 项目中放置 Google Maps API 密钥的位置

Posted

技术标签:

【中文标题】在 NodeJS 项目中放置 Google Maps API 密钥的位置【英文标题】:Where to Put Google Maps API Key in NodeJS Project 【发布时间】:2021-06-08 13:12:29 【问题描述】:

我有 Google Maps API 密钥并希望将其与 google-distance-matrix 库一起使用。但我不知道将我的密钥放在哪里并将其与上述库集成这是我的代码

const distanceAPI = require('google-distance-matrix')

dispatchers.dispatchers.map( (dispatcher) => 
distanceAPI.matrix(dispatcher.location.coordinates, call.pickupLocationCoordinates.coordinates, mode, function(err, distances) 
    
    console.log("distances")
    console.log(distances)
)

)

以下错误仍在抛出

error = '您必须使用 API 密钥来验证对 Google Maps Platform API 的每个请求。'

我还在 .env 文件中创建了一个变量,如下所示

G_API = key

请告诉我使用地图服务的正确方法。

【问题讨论】:

【参考方案1】:

正如 google-distance-matrix 的 README.md 中所述,您必须在 distance.key() 方法中精确定位。

distance.key('myAPIkey');

如果您使用.env 文件,您应该使用process.env 和dotenv 包调用您的环境变量变量。

index.js

require('dotenv').config();

const distance = require('google-distance-matrix');

distance.key(process.env.MY_API_KEY);

// Working example code
var origins = ['San Francisco CA'];
var destinations = ['New York NY', '41.8337329,-87.7321554'];

distance.matrix(origins, destinations, function (err, distances) 
    if (!err)
        console.log(distances);
)

.env

MY_API_KEY=1234AEB

您可以在 google-distance-matrix 文档中查看完整的工作示例 here

【讨论】:

我收到以下错误:此 API 项目无权使用此 API。 您确定,您的 API 密钥有效? 它解决了你的问题吗:post ? 是的,它完成了。感谢您的输入。我必须启用该服务。启用后,现在它可以工作了。 你能接受我的回答以便结束这个话题吗?)

以上是关于在 NodeJS 项目中放置 Google Maps API 密钥的位置的主要内容,如果未能解决你的问题,请参考以下文章

在 Visual Studio 中放置并插入 unordered_map?

等待 Google 在 AsyncTask 中放置照片请求

Google Cloud Run (GCR) 的 Gunicorn (with Flask) 参数 - 在 Dockerfile 中放置啥? [关闭]

Android 无法在 main-dex 文件中放置请求的类

有没有办法用 Shiny R 在 textInput 中放置超链接

我们可以在mapreduce代码中的mapper类的setup方法中放置一些计算任务吗