Método actualizado:
A partir de marzo de 2016, las versiones recientes de Chrome y Firefox ahora admiten el uso FormData.entries()
para inspeccionar FormData. Fuente .
// Create a test FormData object
var formData = new FormData();
formData.append('key1', 'value1');
formData.append('key2', 'value2');
// Display the key/value pairs
for (var pair of formData.entries()) {
console.log(pair[0]+ ', ' + pair[1]);
}
¡Gracias a Ghost Echo y a Rloth por señalar esto!
Vieja respuesta:
Después de mirar estos artículos de Mozilla , parece que no hay forma de obtener datos de un objeto FormData. Solo puede usarlos para crear FormData para enviar a través de una solicitud AJAX.
También acabo de encontrar esta pregunta que dice lo mismo: FormData.append ("clave", "valor") no funciona .
Una forma de evitar esto sería crear un diccionario regular y luego convertirlo a FormData:
var myFormData = {
key1: 300,
key2: 'hello world'
};
var fd = new FormData();
for (var key in myFormData) {
console.log(key, myFormData[key]);
fd.append(key, myFormData[key]);
}
Si desea depurar un objeto FormData simple, también puede enviarlo para examinarlo en la consola de solicitud de red:
var xhr = new XMLHttpRequest;
xhr.open('POST', '/', true);
xhr.send(fd);