Empresas
Empleos
  • Sobre nosotros
  • Soluciones
    • Publicación de vacantes
      Publica tu vacante y recibe candidatos calificados en 48h.
    • Evaluación de candidatos
      500+ pruebas técnicas y psicológicas, más anti-fraude.
    • Headhunting
      Búsqueda ejecutiva a la medida de principio a fin.
    • Nómina + EOR
      Dispersión de nómina y EOR en más de 15 países de LATAM.
  • Precios
  • Empleos

0

353
Vistas
Error "TypeError: response.write no es una función"

Estoy tratando de aprender algo de Node.js y este es mi primer proyecto tutorial. Aunque cambié algunas cosas menores, principalmente seguí este tutorial. https://www.youtube.com/watch?v=PFJHQ2g6s0k&ab_channel=ItsTechMode

Mi código JS está debajo.

 const http = require('http'); const url = 'https://api.openweathermap.org/data/2.5/weather?q=Athens,GR&appid=a7003b6a9783fdc3503466334cbd605b&units=metric'; let data; var server = http.createServer(function(request,response){ var request = require('request'); response.writeHead(200, {'Content-Type': 'text/plain'}); response.write("Hello write"); response.end('Hello World\n'); request({ url: url }, (error, response, body) => { if (error) { console.log(error) } let data = JSON.parse(body); response.write("Trying to print this."); response.end(); // response.write("<html><body><div id='container'>"); // response.write("<h1>" +"City Name - :"+ data['name']+"<br>"+"</h1>"); // response.write("<h2>"+ "Temperature - :" + data.main['temp'] + "<br>"+"</h2>"); // response.write("<h2>"+"Sunset Time - :"+ new Date(data.sys["sunset"]+1000)+ "</h2>"); // response.write("</div></body></html>"); console.log(response.body) response.end(); }); }).listen(8000, "127.0.0.1");

Obtengo el "TypeError: response.write no es una función" Stackoverflow no me permite agregar una imagen. así que aquí hay un enlace a la captura de pantalla del error. ¿Puede alguien ayudarme al respecto? Además, lo siento si el formato de esta publicación se ve extraño. Traté de hacer que se viera lo mejor que pude, pero soy un novato por aquí.

about 4 years ago · Juan Pablo Isaza
1 Respuestas
Responde la pregunta

0

La response del parámetro en esta línea:

var server = http.createServer(function(request,response){...}

Es lo que necesita usar para hacer cosas como "response.write", sin embargo aquí:

request({ url: url }, (error, response, body) => {

Tiene algún otro parámetro que está llamando "respuesta". Eso hace que la variable de "respuesta" original sea inaccesible.

Cambie el nombre del parámetro en la request(...) llamada a "resp" o algo así. Y asegúrese de usar "resp.body" dentro de la devolución de llamada.

about 4 years ago · Juan Pablo Isaza Denunciar
Responde la pregunta
Encuentra empleos remotos

¡Descubre la nueva forma de encontrar empleo!

Top de empleos
Top categorías de empleo
Empresas
Publicar vacante Precios Comercial
Legal
Términos y condiciones Política de privacidad
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomiéndame algunas ofertas
Necesito ayuda