如何将 feathersjs 服务中的错误响应给客户端?

How to response error in feathersjs service to client?

我按照这个 link 'https://docs.feathersjs.com/services/readme.html' 创建了 feathersjs 的 restful 服务。它适用于正常情况。但我不知道如何向客户端响应错误消息,如 404、500 等。下面是服务代码。它通过 promise.resolve return 进行响应。在这种情况下如何 return 出错?

class MessageService {
  get(id, params) {
    return Promise.resolve({
      id,
      read: false,
      text: `Feathers is great!`,
      createdAt: new Date.getTime()
    });
  }
}

您可以使用'feathers-errors'模块来设置错误代码。请参阅下面的示例代码。

const feathers = require('feathers');
const rest = require('feathers-rest');
const errors = require('feathers-errors');
const app = feathers();

app.configure(rest());
app.use('/messages', {
  get(id, params) {
    console.log(id);
    if (id === "1") {
      return Promise.resolve({
        id,
        read: false,
        text: `Feathers is great!`,
        createdAt: new Date().getTime()
      });
    } else if (id === "2") {  
      console.log(id);    
      var badRequest = new errors.BadRequest('http 400 bad request');
      return Promise.reject(badRequest);
    } else if (id === "3") {      
      console.log(id);    
      var generalError = new errors.GeneralError('Http 500 general error');
      return Promise.reject(generalError);
    }

  }
});

app.listen(3030);

feathers-errors module