Внешний интерфейс моего приложения на базе Ionic 2 POST отправляет некоторые пользовательские данные на серверную часть приложения, работающую на NodeJS / ExpressJS.
Все, что я хочу сделать, это использовать метод register_user () Twilio Authy внутри функции обратного вызова успеха ExpressJS app.post ().
Внешние сообщения POST для URL:
https://my-bluemix-app-placeholder/forTwilio
Но каждый раз он выдает 500 Internal server error.
Но я проверил и перепроверил, нет ли неправильной конфигурации, и ничего не нашел.
В следующем коде я использовал значения прямого ввода. Я делюсь своим кодом ниже.
var loopback = require('loopback');
var boot = require('loopback-boot');
var helmet = require('helmet');
var errorHandler = require('strong-error-handler');
var bodyParser = require('body-parser');
var imf = require('bms-mca-oauth-sdk');
// Twilio Authy
var authy = require('authy')['DxJRXLSj6Tl4jD7ytHLx0bhXLEnonbOc'];
var app = module.exports = loopback();
app.use(helmet());
app.use(errorHandler({debug:true, log:true}));
app.use(bodyParser.json());
app.use(bodyParser.urlencoded({ extended: true }));
var authyUsrId = "";
app.post('/forTwilio', function(req, res){
// send the received data to Twilio Authy
authy.register_user('[email protected]', '7407098203', '91', function(err, res){
authyUsrId = res.user.id;
});
res.send(authyUsrId);
});
// ------------ Protecting backend APIs with Mobile Client Access end -----------------
app.start = function () {
// start the web server
return app.listen(function () {
app.emit('started');
var baseUrl = app.get('url').replace(/\/$/, '');
console.log('Web server listening at: %s', baseUrl);
var componentExplorer = app.get('loopback-component-explorer');
if (componentExplorer) {
console.log('Browse your REST API at %s%s', baseUrl, componentExplorer.mountPath);
}
});
};
// Bootstrap the application, configure models, datasources and middleware.
// Sub-apps like REST API are mounted via boot scripts.
boot(app, __dirname, function (err) {
if (err) throw err;
if (require.main === module)
app.start();
});