【问题标题】:How to read config file not commited to git如何读取未提交给 git 的配置文件
【发布时间】:2018-09-03 16:03:14
【问题描述】:

假设我有一个需要从配置文件中读取 api 密钥的网站。

index.html中,我可以在最底部添加<script src="js/config.js"></script>,这样它就会在里面导入config.js

假设在config.js 里面,我有以下内容: var config_obj = {"pwd":"demo"};

现在我希望将此文件提交到 GitHub,但我仍希望能够读取 config_obj。我该怎么做?

如果我在.gitignore 中添加js/config.js,它仍然不起作用。我希望仍然能够访问此对象,但由于文件未提交,我收到错误 Uncaught ReferenceError: config_obj is not defined

这样做的正确方法是什么?

【问题讨论】:

  • I don't want this file to be committed to GitHub, but I still want to be able to read the config_obj. How do I do this? - 我什至很惊讶我能在没有米饭的情况下吃米饭。可能,您想在使用前检查一下? if(config_obj){
  • 如果变量不在你的 git repo 中,你希望它如何存在?
  • 我想知道如何做到这一点。我不想提交 config.js,因为这样任何人都可以看到我的 API 密钥。这完全可以解释为什么我会收到错误,但我想知道是否有办法在不放入配置文件和暴露数据的情况下克服这个问题

标签: javascript git passwords config


【解决方案1】:

如果 API 密钥是私有的,并且您不想将其公开给使用您网站的用户,则永远不应将其放入您的网站 javascipt,因为它们将在用户浏览器上运行。如果您需要与需要私有 API 密钥的远程服务器通信,则需要某种后端来封装该通信。

但是,如果网站是私有的或 API 密钥不是秘密(而您只是不想将其置于版本控制中),我会手动将 config.js 复制到服务器。

【讨论】:

  • 好答案。但我认为它不能满足这个问题。
  • 这是一个由github托管的网站
  • @KSplitX 在公共 Github 存储库中,您无法隐藏秘密。
猜你喜欢
  • 1970-01-01
  • 2023-03-26
  • 2018-04-25
  • 2021-12-11
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2012-02-16
  • 2010-12-06
相关资源
最近更新 更多