He estado tratando de enviar una serie de objetos dentro de los datos de un formulario usando React JS en el backend. Cuando estoy insertando los datos dentro de los datos del formulario usando su método de agregar, muestra mi matriz como esta
SurveyAnswers: [object object, object, object]en la pestaña de red de los navegadores, pero hemos estado recibiendo nulo en el backend. Hemos verificado que la API de backend funciona bien cuando enviamos datos usando el cartero, pero cuando los datos se envían a través de frontend, hay un problema. El siguiente es mi fragmento de código:
const answers = [ { Answer: "Hello World", QuestionId: 26, UserId: 190 }, { Answer: "Document", File: file, UserId: 190, QuestionId: 23 } ] const onSubmit = () => { const data = new FormData(); data.append("SurveyAnswers", answers); const res = await executeAddSurveyFormAnswers({ data: data }); console.log('response, res); }Si está tratando de pasar un objeto, deberá "fijar" el objeto
data.append("SurveyAnswers", JSON.stringify(answers))
Luego, en el backend, deberá "Analizar" o "Deserializar" la cadena para volver a convertirla en un objeto. No sé qué idioma está usando para el lado del servidor, pero puede hacer una búsqueda de "parse json string in XXX" <-XXX es el idioma (es decir, C #)
Luego, en el backend, deberá "Analizar" o "Deserializar" la cadena para volver a convertirla en un objeto.
Si está usando Node.js, usaría JSON.parse() para deserializar el objeto en cadena a un objeto javascript nativo.