Empresas
Empregos
  • Sobre nós
  • Soluções
    • Publicação de vagas
      Publique sua vaga e receba candidatos qualificados em 48h.
    • Avaliações de candidatos
      Mais de 500 testes técnicos e psicológicos, mais anti-fraude.
    • Headhunting
      Busca executiva personalizada do início ao fim.
    • Folha de Pagamento + EOR
      Dispersão de folha e EOR em mais de 15 países da LATAM.
  • Preços
  • Empregos

0

729
Visualizações
Cómo validar si el parámetro del cuerpo en la cadena Express Nodejs se puede convertir a JSON usando express-validation y joi

Estoy creando una función que acepta una solicitud de publicación. La solicitud de publicación también contiene un objeto JSON convertido en una cadena. En el backend, necesito validar si esta cadena se puede analizar en JSON y solo luego continuar. Existe la función de enrutamiento:

 var express = require('express'); var validate = require('express-validator'); var hotelController = require('../controllers/hotel-controller'); var hotelValidation = require('../validations/hotel-validation'); var router = express.Router(); router.route('/create') .post(validate(hotelValidation.createHotel), hotelController.create);

Aquí está el objeto de validación:

 var Joi = require('joi'); module.exports = { createHotel: { body: { //NEED TO CHECK IF THE BELOW FIELD //CAN BE CONVERTED TO JSON FROM STRING data: Joi.string().required() } } };
about 4 years ago · Santiago Trujillo
1 Respostas
Responde à pergunta

0

Como se comentó en la pregunta, Joi.object() seguirá funcionando con una cadena JSON , Joi.array() también funciona.

Está documentado en la API.

Genera un objeto de esquema que coincide con un tipo de datos de objeto (así como cadenas JSON que se analizan en objetos).

Por ejemplo, dado el esquema:

 Joi.object().keys({ body: Joi.object().keys({ data: Joi.object(), array: Joi.array() }) })

Una carga útil válida puede ser:

 { body: { data: '{"json": true, "foo": "bar"}', array: '[1, 2, 3, "hello", 4, "world"]' } }

El ejemplo anterior se puede demostrar aquí , simplemente pegue el esquema y los datos del ejemplo.

about 4 years ago · Santiago Trujillo Relatório
Responde à pergunta
Encontrar trabalhos remotos

Descubra a nova forma de encontrar um emprego!

melhores empregos
Principais categorias de trabalho
Empresas
Postar vaga Preços Comercial
Jurídico
Termos e Condições Política de privacidade
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomende algumas ofertas para mim
Preciso de ajuda