4 回答

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_PASS=secret-password
此外,您應該確保這不會提交到您的版本控制系統。
如果您使用的是 git,請創建一個.gitignore并確保您有一個條目.env
// .gitignore
.env

TA貢獻1828條經驗 獲得超3個贊
首先,在JSON中,沒有const. const來自JS。如果您想將憑據保存到 JSON 文件,它將包含如下內容:
{
"service": "Gmail",
"host": "smtp.gmail.com",
"auth": {
"user": "[email protected]",
"pass": "xxxxx"
}
}
此外,它需要雙引號而不是單引號。
在此之后,您需要做的就是要求它
const credentials = require('./jsonCredentials.json');

TA貢獻1936條經驗 獲得超7個贊
我只想補充一點,我建議使用更安全的 .env 文件。
但要回答你的問題,因為我假設你正在使用 ReactJS,你可以這樣做:
配置.js
export default const config = {
service: 'Gmail',
host: 'smtp.gmail.com',
auth: {
user: '[email protected]',
pass: 'xxxxxx'
}
}
然后只需導入即可使用它
import config from './config.js'
function myFunction()
{
const transporter = mail.createTransport(config);
}

TA貢獻1813條經驗 獲得超2個贊
首先,您可以使用fs
名為fs.readFileSync(filePath)
.
JSON.parse(content)
然后,您使用該方法將內容解析為 JSON 對象。
從那里,您可以將 JSON 內容作為一個對象,現在您可以在您的createTransport
方法調用中使用它。
添加回答
舉報