如何在Squarespace上隐藏API密钥?

时间:2020-06-09 17:49:04

标签: javascript api-key squarespace

我正在代码注入中使用访存来获取一些事件数据以显示在我的Squarespace网站上。提取的代码正在运行,并返回我能够显示的响应。

获取内容如下

let response = fetch(
            "https://api.seatgeek.com/2/events?per_page=100&venue.city=boston&client_id=MYAPIKEY"
          )
            .then((response) => //...

在Squarespace网站上确保MYAPIKEY安全和可访问的最佳实践是什么?

我的第一个猜测是,我将必须创建一个新的未链接且受密码保护的页面,在该页面中创建一个新的代码注入,然后在API调用期间以某种方式链接到该页面-但我不确定那是否真的安全。

感谢您的帮助!

1 个答案:

答案 0 :(得分:0)

最简单的方法之一可能是安装并使用npm软件包中的 “ dotenv” https://www.npmjs.com/package/dotenv

安装此软件包后,将创建一个名为 “。env” 的文件夹。您可以在此文件夹中键入apikey。像这样:API_KEY = 12313123213ASDAD;然后将包包含在项目中,并且可以将api键用作 “ process.env”

完成这些操作后,现在就可以通过以下方式使用apikey:

let response = fetch(
            "https://api.seatgeek.com/2/events?per_page=100&venue.city=boston&client_id=process.env.API_KEY // Its your api key
          )
            .then((response) => //...

对于git,还必须在“ .gitignore”中添加“。env”

祝你好运!