【问题标题】:Trying to hide my API key breaks my URL. Anyone know why?试图隐藏我的 API 密钥会破坏我的 URL。有谁知道为什么?
【发布时间】:2020-02-06 17:51:49
【问题描述】:

我是 javascript 新手,并尝试遵循 Udemy 教程并将代码上传到 github。我需要隐藏 URL 中使用的 API 密钥,如下所示:

https://api.darksky.net/forecast/api-key-here/37.8267,-122.4233

我创建了一个 .env 文件,其中包含一行 API_KEY=my-key-of-numbers-here

我的整个代码如下所示:

const request = require('request');
require('dotenv').config();

const api_key = process.env.API_KEY;

const url = 'https://api.darksky.net/forecast/${api_key}/37.8267,-122.4233';

request({ url: url }, (error, response) => {
    const data = JSON.parse(response.body);
    console.log(data.currently);
});

当我在终端中运行node app.js 时,我返回未定义。但是,如果我使用实际密钥,一切正常,但我显然无法公开密钥。我怎样才能解决这个问题?

【问题讨论】:

  • 您的代码看起来不错,所以我会问一些问题。你安装 dotenv 了吗?
  • 是的。肯定安装了。
  • 尝试` 而不是'
  • 天哪。谢谢,原来如此!我觉得自己很笨。

标签: javascript node.js api-key


【解决方案1】:

尝试` 而不是' – Estradiaz

根据@Estradiaz 的评论。我在 URL 周围使用撇号 ' 而不是反引号 `。解决了。​​

【讨论】:

    【解决方案2】:

    你确定你安装了 dotenv 吗?

    在终端中尝试npm install dotenv

    【讨论】:

    • 是的。我肯定在终端中输入了npm i dotenv。当我查看package.json 文件时,它肯定在那里。版本 8.2.0
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2022-08-07
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多