[Hapi.js] Request Validation with Joi

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了[Hapi.js] Request Validation with Joi相关的知识,希望对你有一定的参考价值。

hapi supports request validation out of the box using the joi module. Request path parameters, payloads, and querystring parameters can be validated with joi‘s simple, 

 

‘use strict‘
const Hapi = require(‘hapi‘)
const Joi = require(‘joi‘)
const server = new Hapi.Server()
server.connection({ port: 8000 })

server.route({
  method: [‘POST‘,‘PUT‘],
  path: ‘/user/{id?}‘,
  config: {
    validate: {
      params: Joi.object().keys({
        id: Joi.number()
      }),
      payload: Joi.object().keys({
        id: Joi.number()
        email: Joi.string()
      }).unknown(),
      query: Joi.object().keys({
        id: Joi.number()
      })
    },
    handler: function(request, reply) {
      reply({
        params: request.params,
        query: request.query
        payload: request.payload
      })
    }
  }
})

server.start(() => console.log(`Started at: ${server.info.uri}`))

 

以上是关于[Hapi.js] Request Validation with Joi的主要内容,如果未能解决你的问题,请参考以下文章

如何使用hapi.js读取已在浏览器中设置的cookie

[Hapi.js] Replying to Requests

如何在 hapi.js 上的路径上使用 hapi-auth-jwt2 身份验证?

hapi.js - 404 路由 VS 静态文件路由

如何使用 dropzone.js 和 hapi.js 上传图片

Hapi.js —— Node.js 服务器端应用开发框架