我正在尝试从mongo db获取数据,然后将其作为短信发送。 这是我的代码:
No
对我的短信服务的调用返回一个套接字挂断。如果我改变表格说
import mongoose from 'mongoose'
import mediaModel from '../MediaSchema'
import requestPromise from 'request-promise'
var request = require('request');
export default (app) => {
app.get( '/sms/:number', (req, res) => {
var number = req.params.number;
return req.mediaModel
.find({'time': number})
.exec()
.then(function(data) {
return request({
url: 'https://api.twilio.com/2010-04-01/Accounts/<MyId>/Messages',
method: 'POST',
auth: {
user: '<MyID>',
pass: '<MyToken>'
},
form: {
From: '123456789',
To: '987654321',
Body: data.url
}
})
});
})
}
它有效,因为我不是要解决“数据” 我究竟做错了什么?
答案 0 :(得分:1)
你必须使用q,bluebird等承诺库来宣传请求模块。
var request = bluebird.promisifyAll(require('request'));
否则使用request-promise,我希望返回承诺。