Я собрал воедино обещание выполнить три действия синхронно.Сначала вставьте в базу данных и разрешите идентификатор этой вставки.Во-вторых, редактирование моего объекта json, чтобы он содержал последний вставленный идентификатор из БД.И в-третьих, отправка почтового запроса с использованием запросов npm.Все это заключено в экспресс-конечную точку.
Тем не менее, вызов запросов не отправляется в мой API.Я проверил, удалил зависимости обещаний (что необходимо для получения последнего вставленного идентификатора из БД) и успешно разместил данные, используя точно такую же структуру запроса.Это заставляет меня поверить, что с моим обещанием что-то не так.Кто-нибудь может помочь?
function db() {
return new Promise(function(resolve, reject) {
db.run(`INSERT INTO scan_requests(name, date) VALUES(?,?);`, [req.body.name,req.body.date], function(err) {
if (err) {
console.log(err)
}
let q = this.lastID
resolve(q)
})
})
}
db()
.then(function(q) {
let data = {
url: 'https://api/key/',
body: {
name: req.body.name,
scan_callback: `http://localhost:80/${q}`
},
json: true
}
return(data)
}).then(function(data) {
res.json(req.body)
request
.post(data)
.on('error', function(err) {
console.log(err)
})
.pipe(res)
})