Iam использованием
https://github.com/peteward44/node-svn-ultimate
И не разработана с Promises. Но я хочу отправить результат «Успех или ошибка для клиента с сервера NodeJs».
Обычно это проходит этот путьОтправить манипулируют/собственный Созданный ответ на клиенте с сервера
// Client -> AngularJs Request
svn()
{
this.$http.post(...)
.then(res => {
console.log(res);
},err=>{
console.log(err);
});
}
**Server**
// index.js
'use strict';
var express = require('express');
var router = express.Router();
router.post('/svn', controller.svn);//the route to use
module.exports = router;
//controller.js
function respondWithResult(res, statusCode) {//respond to client
statusCode = statusCode || 200;
return function(entity) {
if (entity) {
res.status(statusCode).json(entity);
}
};
}
...
export function svn(req, res) {
return DB.find({...})//Sequelize Query
})//returning res as promise
.then(res => {
svnUltimate.commands.commit(..., (err, success) => {
if (err) {
console.log('commit error')
console.log(err)
} else {
console.log(success);
})
return res;
})
})
.then(respondWithResult(res))
.catch(handleError(res));
}
Сейчас Реагирование результат Database Query, но я хочу, чтобы это реакции Результат SVN.
Пробовал несколько вещей, как
svnUltimate.commands.commit(..., (err, success) => {
if (err) {
res=err;
} else {
//res=success;// answer was still the DB query
//return success; // no output
//res.status(404).send('crazy');// is no function
//res.status = 404 //no output
// res.writeHeader()// no function
})
return res;
})
Как я могу ответить на Клиента с результатом Результата СВН Command?
Изменить res
Sequelize?
Напишите как-то собственный ответ?
Или есть пакет SVN с обещаниями?
Использование только NodeJs 6.9.5
Express 4.0
Sequelize 3,28