【问题标题】:Environment variables doesn't replace '\n' with new line in javascript and throw error:0909006C:PEM routines:get_name:no start line环境变量不会在 javascript 中用新行替换 '\n' 并抛出错误:0909006C:PEMroutines:get_name:no start line
【发布时间】:2020-07-13 22:28:54
【问题描述】:

我使用服务帐户通过 google api 连接到我的 gmail 帐户。 在执行此操作时,我在 .json 文件中获得了带有“private_key”的凭证, 看起来像:

-----BEGIN PRIVATE KEY----- MIIEvQIBADANBgkqhkiG9w0BAQEFAASCBKcwggSjAgEAAoIBAQCfE0lFOu6odsZd vqCrXHbyFvalkMReFi1bo76tjSpNuJkDlHRKlx0ro+VZ0bqifIbo3yRGST+/Bxyr

现在,我必须部署我的应用程序, 所以我将private_key 添加到.env

不幸的是,我收到了这个错误: Error: error:0909006C:PEM routines:get_name:no start line

当控制台记录proccess.env.private_key 时,我得到这样的结果:

-----BEGIN PRIVATE KEY-----\nMIIEvAIBADANBgkqhkiG9w0BAQEFAASCBKYwggSiAgEAAoIBAQCupQiD7fphkibb\nSRJ9x7tJLLWPvL+abF7pUsM30dwSxLtws4O83SFfDnRT9SYebZGz+9EVkv4VtSux\nzOhmLIBc3zUIAQyaD9VZFnZKFf5B0fjD/fp4Oq+AWXtMy

在一长行中...所有\n 仍然存在,而不是被新行替换。

【问题讨论】:

    标签: javascript node.js google-api environment-variables


    【解决方案1】:
           let privateKey =  process.env.PRIVATE_KEY.replace(/\\n/gm, '\n')
    

    这个正则表达式将\n 替换为刹车线。

    【讨论】:

      猜你喜欢
      • 2020-09-22
      • 2020-10-30
      • 2016-02-02
      • 2021-09-20
      • 1970-01-01
      • 2022-01-09
      • 2018-11-28
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多