为了账号安全,请及时绑定邮箱和手机立即绑定

将所有凭据放入文件 .json

将所有凭据放入文件 .json

长风秋雁 2022-12-29 09:41:14
我是 Javascript 的新手,但我仍然对 javascript 和使用 json 文件感到困惑。我在我的办公室项目之一工作,关于发送消息,我已经完成了后端和前端的所有代码,但是当我的项目负责人审查代码时,他说将所有凭证放入文件 json . 要发送消息/邮件,我使用 node.js 中的 nodemailer这是我必须放入 json 文件中的凭据const transporter = mail.createTransport({ //unresolved  service: 'Gmail',  host: 'smtp.gmail.com',  auth: {    user: 'no.replyxx@xx.org',    pass: 'xxxxxx'  }});我已经将它放入 json 文件中,但是当我在我的 javascript 文件中调用它时,我不知道如何调用它,我尝试导入一个 json 文件,但我只是得到了它的错误,有人可以帮助我吗?我的问题是如何将凭据写入 json 文件以及如何在我的 javascript 中使用它?谢谢
查看完整描述

4 回答

?
HUX布斯

TA贡献1876条经验 获得超6个赞

你应该考虑使用dotenv


你可以像这样使用它


// this will find the .env file at the root of your project

// and parse the entries into key/value pairs on the `process.env` object

require('dotenv').config()


const transporter = mail.createTransport({ //unresolved

  service: 'Gmail',

  host: 'smtp.gmail.com',

  auth: {

    user: process.env.MAIL_USER,

    pass: process.env.MAIL_PASS

  }

});

.env在项目的根目录下创建一个文件


// .env


MAIL_USER=no.replyxx@xx.org

MAIL_PASS=secret-password

此外,您应该确保这不会提交到您的版本控制系统。

如果您使用的是 git,请创建一个.gitignore并确保您有一个条目.env


// .gitignore


.env


查看完整回答
反对 回复 2022-12-29
?
子衿沉夜

TA贡献1828条经验 获得超3个赞

首先,在JSON中,没有const. const来自JS。如果您想将凭据保存到 JSON 文件,它将包含如下内容:


{

  "service": "Gmail",

  "host": "smtp.gmail.com",

  "auth": {

    "user": "no.replyxx@xx.org",

    "pass": "xxxxx"

  }

}

此外,它需要双引号而不是单引号。


在此之后,您需要做的就是要求它


const credentials = require('./jsonCredentials.json');


查看完整回答
反对 回复 2022-12-29
?
LEATH

TA贡献1936条经验 获得超6个赞

我只想补充一点,我建议使用更安全的 .env 文件。


但要回答你的问题,因为我假设你正在使用 ReactJS,你可以这样做:


配置.js


export default const config = {

  service: 'Gmail',

  host: 'smtp.gmail.com',

  auth: {

    user: 'no.replyxx@xx.org',

    pass: 'xxxxxx'

  }

}

然后只需导入即可使用它


import config from './config.js'


function myFunction()

{

  const transporter = mail.createTransport(config);

}


查看完整回答
反对 回复 2022-12-29
?
慕姐8265434

TA贡献1813条经验 获得超2个赞

首先,您可以使用fs名为fs.readFileSync(filePath).

JSON.parse(content)然后,您使用该方法将内容解析为 JSON 对象。

从那里,您可以将 JSON 内容作为一个对象,现在您可以在您的createTransport方法调用中使用它。


查看完整回答
反对 回复 2022-12-29
  • 4 回答
  • 0 关注
  • 80 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信