如何使用环回映射我的 url 和中间件集

how can I map my set of url and middleware using loopback

我正在从 express 迁移到 loopback 为了快速映射一组 url,我正在做以下工作。

var app = express();
app.use(bodyParser.json());
app.use(bodyParser.urlencoded({ extended: false }));

app.get("/",function(req,res){....});
app.post('/dataitsno', function(req,res){...});

I just wonder, how can I map my set of url and add this middleware using loopback

在环回中,您不需要像我们在 express 中那样为 url 编写 get 和 post 以及其他方法。您编写 api 并在其上公开不同的方法。这些 api 将接受请求所需的所有数据,在数据源的帮助下处理它并 return 返回。

谈到自定义响应和中间件,您可以在 middlewarae.json 文件中注册它们。有关更多信息,您可以参考 link 中的文档:https://docs.strongloop.com/display/public/LB/Defining+middleware

与 link 状态一样,strongloop 具有路由请求的阶段。

LoopBack 支持以下类型的中间件: 用于自定义应用程序逻辑的预处理中间件。请参阅静态中间件示例。 动态请求处理中间件服务于动态生成的响应,例如从模板呈现的 HTML 页面和对 REST API 请求的 JSON 响应。请参阅预处理中间件的示例。 为静态客户端资产提供服务的静态中间件。请参阅静态中间件示例。 错误处理中间件,用于处理请求错误。请参阅错误处理中间件示例。

编辑: 对于此示例,您可以参考以下特别截取的代码:

var loopback = require('loopback');
var bodyParser = require('body-parser');
 
var app = loopback();
 
app.middleware('routes:before', bodyParser.json());
app.middleware('routes', loopback.rest());

更多人仍然可以在server.js文件中使用您使用的常规快递类型路由

Loopback 建立在 Express 框架之上,在 Loopback 中添加中间件与在 Express 中添加中间件没有什么不同。

请检查 指定路线 部分 this link。这个link 告诉了中间件如何在环回中注册。 (中间件还有其他的注册方式,这是一种方式)

代码摘自以上link

For example, to register middleware for all endpoints that start with "/greet": In the file /server/server.js

var loopback = require('loopback');

var boot = require('loopback-boot');

var app = module.exports = loopback();

app.use('/greet', function(req, res, next ) { ... })

现在,如果我们修改上面的代码片段以适合您的情况,您可以使用如下内容:

var loopback = require('loopback');
var boot = require('loopback-boot');
var bodyParser = require('body-parser');
var app = module.exports = loopback();
app.use(bodyParser.json());
app.get("/",function(req,res){....});
app.post('/dataitsno', function(req,res){...});

现在,在环回中定义中间件的其他方法中,一种方法是将您的 routes/middleware 放在 boot 文件夹中,脚本在服务器启动时按字典顺序执行。

我知道的另一种方法应该是使用 middleware.json