Stored procedures feathersjs sequelize调用存储过程由hook执行';无法解决

Stored procedures feathersjs sequelize调用存储过程由hook执行';无法解决,stored-procedures,sequelize.js,feathersjs,Stored Procedures,Sequelize.js,Feathersjs,我在创建调用存储过程的钩子时遇到问题 我的自定义服务挂钩(customservice.hooks.js)是: 我的服务类(customservice.class.js): 和我的服务(customservice.service.js): 最后,我的钩子是(callstored.js) 如果我检查控制台,我得到的数据是正确的,但是像Postman这样的REST客户机没有调用任何数据 有什么想法吗?谢谢。如果要更改响应,必须设置 是请求数据,仅适用于创建、更新和补丁 请记住,设置hook.resul

我在创建调用存储过程的钩子时遇到问题

我的自定义服务挂钩(customservice.hooks.js)是:

我的服务类(customservice.class.js):

和我的服务(customservice.service.js):

最后,我的钩子是(callstored.js)

如果我检查控制台,我得到的数据是正确的,但是像Postman这样的REST客户机没有调用任何数据


有什么想法吗?谢谢。

如果要更改响应,必须设置

是请求数据,仅适用于
创建
更新
补丁

请记住,设置
hook.result
将跳过您的自定义服务
find
,如果它是在
之前的
hook中设置的

const callstored = require('../../hooks/callstored')
module.exports = {
  before: {
    all: [],
    find: [callstored()],
    get: [],
    create: [],
    update: [],
    patch: [],
    remove: []
  },
 ...
const mysql = require('mysql')

class Service {
  constructor (options) {
    this.options = options || {};
  }

  find (params) {
    return Promise.resolve( [] );
  }

  get (id, params) {
    return Promise.resolve({

      id, text: `A new message with ID: ${id}!`
    });
  }

  create (data, params) {
    if (Array.isArray(data)) {
      return Promise.all(data.map(current => this.create(current)));
    }

    return Promise.resolve(data);
  }

  update (id, data, params) {
    return Promise.resolve(data);
  }

  patch (id, data, params) {
    return Promise.resolve(data);
  }

  remove (id, params) {
    return Promise.resolve({ id });
  }
}

module.exports = function (options) {
  return new Service(options);
};

module.exports.Service = Service;
const createService = require('./rankingvotes.class.js');
const hooks = require('./rankingvotes.hooks');

module.exports = function (app) {

  const paginate = app.get('paginate');

  const options = {
    name: 'rankingvotes',
    paginate
  };

  // Initialize our service with any options it requires
  app.use('/rankingvotes', createService(options));

  // Get our initialized service so that we can register hooks and filters
  const service = app.service('rankingvotes');

  service.hooks(hooks);

  app.publish(() => {

  });
};
const Sequelize = require('sequelize');
module.exports = function () {
  return function (hook) {
    sequelize = hook.app.get('sequelizeClient');
    let result=[];
    return sequelize.query('CALL RANKING();',{
      nest: true,
      raw: true }).then(function(response){
        console.log(response[0]) //data are correct
        hook.data=response[0]; 
        return hook;
      }).error(function(err){
        console.log(err);
        return hook;
      });
  }
}
const Sequelize = require('sequelize');
module.exports = function () {
  return async hook => {
    try {
      const sequelize = hook.app.get('sequelizeClient');
      const response = await sequelize.query('CALL RANKING();',{
        nest: true,
        raw: true
      });

      console.log(response[0]) //data are correct
      context.result = response[0]; 
    } catch(error) {
      console.error(error);
    }

    return hook;
  }
}