【问题标题】:Using Non-Rest Calls with Loopback (Strongloop)使用带环回的非休息调用 (Strongloop)
【发布时间】:2015-01-27 23:42:29
【问题描述】:

我们将 Loopback 用于我们的 REST API,并希望通过同一实例实现一些标准的类似 Node Express 的调用,这些调用不会通过 Loopback 框架自动路由。我们如何在不干扰 Loopback 路由的情况下添加新的单独路由?这是标准的 Loopback 启动代码:

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

var app = module.exports = loopback();

// Bootstrap the application, configure models, datasources and middleware.
// Sub-apps like REST API are mounted via boot scripts.
boot(app, __dirname);

app.start = function() {
  // start the web server
  return app.listen(function() {
    app.emit('started');
    console.log('Web server listening at: %s', app.get('url'));
  });
};

// start the server if `$ node server.js`
if (require.main === module) {
  app.start();
}

【问题讨论】:

    标签: node.js rest express loopbackjs strongloop


    【解决方案1】:

    只需通过 server/server.js 中的中间件添加它,就像您通常在典型的 Express 应用中所做的那样。

    ...
    // Bootstrap the application, configure models, datasources and middleware.
    // Sub-apps like REST API are mounted via boot scripts.
    boot(app, __dirname);
    
    app.use('/', function(req, res) {
      res.send('hello world')
    });
    ....
    

    【讨论】:

    • 添加该路由后出现错误:Loopback 500 TypeError: Object # has no method 'send' at app.start (C:\Dev\Projects\as\as.server \server\server.js:11:9) 在 Layer.handle [as handle_request]
    • 您使用哪个 LoopBack 版本?确保安装了最新版本。我们之前修复了一个类似的错误。
    • 刚刚升级到 LoopBack 版本:2.10.2。我们现在收到以下错误:500 TypeError: Object # has no method 'send' at app.start (C:\Dev\Projects\as\as.server\server\server.js:11:9 ) 在 Layer.handle [as handle_request]
    • console.log 工作,因此代码正在执行。但是,它在 res.send 上中断了。 app.use('/', function (res, req) { console.log('hello, world'); res.send('hello world'); });
    • superkau 提供的代码有bug。正确的应该是:app.use('/', function(req, res) { res.send('hello world') });
    猜你喜欢
    • 2019-07-07
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-12-17
    • 2015-09-18
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多