如何 return 来自预配置的响应? (HapiJS)

How to return a response from a pre config? (HapiJS)

我有路径:

{
    method: 'GET',
    path: '/filesystem',
    config: {pre:[validateJWT]},
    handler: readDir
}

还有两个函数,pre:

const validateJWT = async (req, res) => {
     . . .
    //returns true or false
}

处理程序:

const readDir = async(req, res) => {
  return res.response('Handler response').code(200);
};

如何 link validateJWT 函数的 return 值在 readDir 处理程序函数中使用它?每个函数和路由在不同的文件中。

谢谢。

要使用 validateJWT 函数,您必须像这样为函数指定一个名称:

const validateJWT = () {
  return {
      method: async (req, _res) => {
        . . .
        //returns true or false
      },
      assign: 'validateJWT',
    };
}

然后执行此操作以检索 readDir 中函数的值:

const readDir = async(req, res) => {
  // const {validateJWT} = req.pre;
  return res.response('Handler response').code(200);
};

文档:https://hapi.dev/api?v=20.2.0#-routeoptionspre