12

Joiを使用してhapiのリクエストペイロードを検証するのは初めてです。私の質問は次のとおりです。私はこの定義されたルートを持っています:

{
    method: 'POST',
    path: '/foo/bar',
    config: {
      description: 'foo.bar',
      handler: handlers.foo,
      auth:false,
      tags: ['api'],
      validate: {
        payload: {
          email : Joi.string().required(),
          password : Joi.string().required(),
        }
      }
    }
}

電子メールとパスワードは必須のプロパティです。ただし、すべてを指定することなく、他のプロパティを許可したいと思います。例えば:

{
  email: foo@bar.com,
  password: fooPass,
  name: myName,
  surname: mySurname
}

Joiでそれを行う方法はありますか?

4

2 に答える 2

30

に設定できallowUnknownます:trueoptions

validate: {
  payload: {
    email : Joi.string().required(),
    password : Joi.string().required(),
  },
  options: {
    allowUnknown: true
  }
}

パラメータは検証時にJoioptionsに渡されます。

于 2015-11-04T02:28:26.907 に答える