app.get에서 변수 또는 변수 세트에 액세스하여 전체 프로젝트에 액세스 할 수있게하려면 어떻게해야합니까? SMS 텍스트에서 보낸 정보를 캡처하려고하며 "messageData"변수로 구성된 다음 "MessageSchema"로 전송되어 Mongo 데이터베이스에 저장되고 저장됩니다. 내 문제는 변수 (메시지, 숫자, 대답)가 실제로 발견되지 않는다고 믿는다는 것입니다. 어떻게 해결할 수 있습니까?app.get 내의 변수에 액세스하는 방법
이는 SMS 텍스트를 검색 무엇이며, Twilio, 노드 및 IBM Bluemix를 실시
app.get('/smssent', function(req, res, callback) {
var message = req.query.Body;
var number = req.query.From;
var twilioNumber = req.query.To;
var context = null;
var index = 0;
var contextIndex = 0;
contexts.forEach(function(value)
{
console.log(value.from);
if (value.from == number)
{
context = value.context;
contextIndex = index;
}
index = index + 1;
});
console.log('Recieved message from ' + number + ' saying \'' + message + '\'');
var conversation = new ConversationV1({
username: '',
password: '',
version_date: ConversationV1.VERSION_DATE_2016_09_20
});
//console.log(JSON.stringify(context));
//console.log(contexts.length);
conversation.message({
input: { text: message },
workspace_id: '',
context: context
}, function(err, response) {
if (err) {
console.error(err);
} else {
var answer = response.output.text[0];
if (context == null) {
contexts.push({'from': number, 'context': response.context});
} else {
contexts[contextIndex].context = response.context;
}
var intent = response.intents[0].intent;
console.log(intent);
if (intent == "done") {
//contexts.splice(contexts.indexOf({'from': number, 'context': response.context}),1);
contexts.splice(contextIndex,1);
// Call REST API here (order pizza, etc.)
}
var client = require('twilio')(
'',
''
);
client.messages.create({
from: twilioNumber,
to: number,
body: response.output.text[0]
}, function(err, message) {
if(err) {
console.error(err.message);
}
});
}
});
res.send('');
});
(위) app.js.
하는 index.js
router.post('/app', function(req, res, next) {
if (req.body.number &&
req.body.message &&
req.body.answer
) {
// create object with form input
var messageData = {
number: req.body.number,
message: req.body.message,
answer: req.body.answer
};
// use schema's `create` method to insert document into Mongo
Message.create(messageData, function (error, message) {
if (error) {
return next(error);
} else {
return res.redirect('/');
}
});
} else {
var err = new Error('All fields required.');
err.status = 400;
return next(err);
}
});
(위)이이 조직과에 대한 모든 것을 준비하는 코드입니다 "MessageSchema을."
message.js
var mongoose = require('mongoose');
var bcrypt = require('bcryptjs');
var MessageSchema = new mongoose.Schema({
number: {
type: String,
required: true,
trim: true
},
message: {
type: String,
required: true,
trim: true
},
answer: {
type: String,
required: true,
trim: true
}
});
var Message = mongoose.model('Message', MessageSchema);
module.exports = Message;
마지막으로, 이것은 DB에 대한 모든 정보를 보내는 것입니다.
누구든지이 코드를 개선하거나 개선하기위한 정보가 있으면 알려주십시오. 제공 할 수있는 모든 정보를 공개합니다!
고맙습니다!
대단히 감사합니다. 나는 그 코드 샘플을 얼마나 깊이 조사했는지 확신 할 수는 없지만, DB에 게시하지 않을 수있는 다른 것을 우연히 발견 했습니까? – ItsMeRileyP