Actualmente estoy tratando de obtener la parte correcta de mis datos (el valor real del nombre de usuario y el valor de la contraseña por sí mismos para poder extraerlos y guardarlos en un valor, etc.) de FormData que envié a través de una solicitud POST a mi servidor express pero parece que no puedo obtenerlo, vuelve undefined cuando intento hacer req.body.username O req.body.name o imprime todos mis FormData cuando hago req.body :
'------WebKitFormBoundarymqLPaiCoVje2rgBB\r\nContent-Disposition: form-data; name': '"username"\r\n' + '\r\n' + 'myNamePutInHere\r\n' + '------WebKitFormBoundarymqLPaiCoVje2rgBB\r\n' + 'Content-Disposition: form-data; name="password"\r\n' + '\r\n' + 'password123\r\n' Mi servidor Express: ( NOTA: también probé req.body.username pero tampoco funcionó)
const bodyParser = require('body-parser'); app.use(bodyParser.urlencoded({ extended: true })) app.post('/', function(req, res) { res.send(req.body.name) console.log(req.body.name) });Mi JS para enviarlo:
const form = document.getElementById( "signUpForm" ); const XHR = new XMLHttpRequest(); const FD = new FormData( form ); XHR.open( "POST", "http://localhost:3001/", true); XHR.setRequestHeader("Content-Type", "application/x-www-form-urlencoded"); XHR.send(FD);Mi formulario HTML:
<form id="signUpForm" name="signUpForm"> <div class="flex flex-col"> <input type="text" name="username" placeholder="Username*" class="w-10/12 mr-2 h-7 border-2 mb-3 rounded-lg py-4 px-3 signupinput" required> <input type="password" name="password" placeholder="Password*" class="w-3/6 h-7 border-2 mr-2 rounded-lg py-4 px-3 signupinput" required> </div> <button class="w-40 h-10 text-white bg-main-blue hover:bg-blue-300 rounded-lg mt-12" type="submit" value="Submit">Create an account</button> </form>Cualquier ayuda sería genial, gracias de antemano.
pruebe las funciones de flecha. inicie sesión desde su solicitud en el frontend primero y luego inicie sesión desde el objeto de solicitud completo en el backend. entonces puedes encontrar el cuerpo