Я только начинаю с рамки Loopback API и хотел бы определить промежуточное программное обеспечение, которое будет предварительно обрабатывать данные req, прежде чем передавать его следующей функции. Но я не знаю, как получить доступ к данным в объекте req
. Любая помощь?Loopback middleware - как получить доступ к данным в объекте req?
E.g.
function middleWareThatAddAPropertyToTheRequestJSON(req, res, next) {
// Of course I get undefined for req.data, but that's approximately what I want.
req.data.somethingIWouldLikeToChange = "blahblahblah";
}
Edit:
Вот как я создаю приложение (в server.js)
var loopback = require('loopback');
var boot = require('loopback-boot');
var app = module.exports = loopback();
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);
if (app.get('loopback-component-explorer')) {
var explorerPath = app.get('loopback-component-explorer').mountPath;
console.log('Browse your REST API at %s%s', baseUrl, explorerPath);
}
});
};
// 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;
// start the server if `$ node server.js`
if (require.main === module)
app.start();
});
часть middleware.json (в той же директории с server.js)
...
"initial": {
...
"./middleware/rest/middlewareThatAddAPropertyToTheRequestJSON": {}
},
...
middleware/rest/middlewareThatAddAPropertyToTheRequestJSON.js:
module.exports = function() {
return function middlewareThatAddAPropertyToTheRequestJSON(req, res, next) {
// TODO: add sth to the req
next();
};
};
Другой Edit:
Может быть, я не быть точным. Я хочу изменить запрос POST.
например. Клиентские сообщений:
{ «а»: «б»}
Я хочу добавить пару ключ-значение для запроса. Как это можно сделать?