,可以通过以下步骤实现:
const express = require('express');
const bodyParser = require('body-parser');
const nodemailer = require('nodemailer');
const mysql = require('mysql');
const app = express();
app.use(bodyParser.json());
// 处理来自IBM Watson Assistant的Webhook请求
app.post('/webhook', (req, res) => {
const userInput = req.body.input.text;
// 将用户输入保存到数据库
saveToDatabase(userInput);
// 发送电子邮件
sendEmail(userInput);
// 返回响应给IBM Watson Assistant
res.json({});
});
// 保存用户输入到数据库
function saveToDatabase(userInput) {
const connection = mysql.createConnection({
host: '数据库主机地址',
user: '数据库用户名',
password: '数据库密码',
database: '数据库名称'
});
connection.connect();
const query = `INSERT INTO user_inputs (input) VALUES ('${userInput}')`;
connection.query(query, (error, results, fields) => {
if (error) throw error;
console.log('用户输入已保存到数据库');
});
connection.end();
}
// 发送电子邮件
function sendEmail(userInput) {
const transporter = nodemailer.createTransport({
service: '邮件服务提供商',
auth: {
user: '发件人邮箱',
pass: '发件人邮箱密码'
}
});
const mailOptions = {
from: '发件人邮箱',
to: '收件人邮箱',
subject: '用户输入',
text: userInput
};
transporter.sendMail(mailOptions, (error, info) => {
if (error) throw error;
console.log('用户输入已发送到电子邮件');
});
}
// 启动后端服务
app.listen(3000, () => {
console.log('后端服务已启动');
});
user_inputs
表中,并且通过电子邮件发送给指定的收件人。请注意,以上代码仅为示例,你可以根据自己的需求和技术栈进行适当的修改和扩展。
领取专属 10元无门槛券
手把手带您无忧上云