Sé que se han hecho muchas preguntas similares (ver here y here ), pero probé las soluciones mencionadas allí. Estoy tratando de averiguar por qué mi respuesta de búsqueda de nodo no se comporta como se esperaba. Aquí hay una versión simple del código:
fetch(new URL("https://www.stackoverflow.com")).then(theResponse =>{ console.log("This prints OK: "); console.log(theResponse.headers); console.log("But this prints as undefined:"); console.log(theResponse.headers["content-encoding"]); return theResponse; })Los encabezados impresos son:
{ 'accept-ranges': 'bytes', 'cache-control': 'private', connection: 'close', 'content-encoding': 'gzip', 'content-security-policy': "upgrade-insecure-requests; frame-ancestors 'self' https://stackexchange.com", etc. } ¿Por qué theResponse.headers["content-encoding"] regresa como undefined ?
Debe usar el método .get del objeto Headers :
console.log(theResponse.headers.get("Content-Encoding")); Tenga en cuenta que, a diferencia de un Map o un acceso a la propiedad de un objeto, funciona sin distinguir entre mayúsculas y minúsculas.
también puede usar el método getAll of Headers object, devuelve una matriz
console.log(theResponse.headers.getAll("Content-Encoding"));