Cómo construir un servidor web básico usando Go

Go es un lenguaje de programación interesante para crear aplicaciones web modernas y software de sistema. Creó un gran revuelo después de su lanzamiento y potencia servicios como Docker, Kubernetes, Terraform, Dropbox y Netflix .

Además, la sólida colección de paquetes integrados de Go lo convierte en una excelente opción para la programación web. Este artículo le mostrará cómo escribir un servidor web básico en Go.

Importar los paquetes necesarios

El paquete net/HTTP proporciona todo lo necesario para crear un servidor y un cliente web. Este paquete presenta algunas funciones útiles para manejar la programación web.

Puede importarlo agregando la siguiente línea al comienzo de su código fuente:

import "net/http"

El artículo también utilizará el paquete fmt para formatear cadenas y el paquete log para manejar errores. Puede importarlos individualmente como se muestra arriba, o importar todos los paquetes usando una única declaración de importación:

import (
"fmt"
"log"
"net/http"
)

Puede continuar escribiendo la función principal después de importar los paquetes necesarios. Continúe y guarde el archivo fuente con la extensión .go . Si está utilizando Vim , use el siguiente comando para guardar y salir de Vim:

:wq server.go

Escribe la función principal.

Los programas Go residen directamente dentro de la función principal, acertadamente denominada "principal". Deberá realizar una llamada al servidor aquí. Agregue las siguientes líneas al código fuente y vea lo que hacen:

func main() {
http.HandleFunc("/", index)
log.Fatal(http.ListenAndServe(":8080", nil))
}

El ejemplo define la función principal usando la palabra clave func . Go tiene reglas estrictas sobre la posición de la llave de apertura, así que asegúrese de que la llave inicial esté en la línea correcta. La primera declaración en main define que todas las solicitudes web a la ruta raíz ( "/" ) serán manejadas por índice, una función de tipo http.HandlerFunc .

La segunda línea inicia el servidor web a través de la función http.ListenAndServe . Le indica al servidor que escuche continuamente las solicitudes HTTP entrantes en el puerto 8080 del servidor. El segundo parámetro de esta función es necesario para bloquear el programa hasta el final.

Dado que http.ListenAndServe siempre devuelve un error, el ejemplo incluye esta llamada dentro de una llamada log.Fatal . Esta declaración registra cualquier mensaje de error generado en el lado del servidor.

Implementar funciones de procesamiento.

Como puede ver, la función principal llama al índice de la función del controlador para manejar las solicitudes de los clientes. Sin embargo, el ejemplo aún no ha definido esta funcionalidad para su servidor.

Agreguemos las declaraciones necesarias para que la función de índice sea utilizable:

func index(w http.ResponseWriter, r *http.Request) {
fmt.Fprintf(w, "Hi there, welcome to %s!", r.URL.Path[1:])
}

Esta función toma dos argumentos diferentes de tipo http.ResponseWriter y http.Request . El parámetro http.ResponseWriter contiene la respuesta del servidor a la solicitud entrante, en forma de un objeto http.Request .

La función Fprintf del paquete fmt se utiliza para mostrar y manipular cadenas de texto. El artículo utiliza esto para mostrar la respuesta del servidor a las solicitudes web. Finalmente, el elemento r.URL.Path[1:] se utiliza para recuperar datos después de la ruta raíz.

Agrega todas las partes restantes.

Su servidor web Go estará listo una vez que haya agregado todos los componentes restantes. El código se verá así:

import (
"fmt"
"log"
"net/http"
)
func index(w http.ResponseWriter, r *http.Request) {
fmt.Fprintf(w, "Hi there, welcome to %s!", r.URL.Path[1:])
}
func main() {
http.HandleFunc("/", index)
log.Fatal(http.ListenAndServe(":8080", nil))
}

La primera línea es necesaria para compilar este código del servidor web Go como un archivo ejecutable.

Cómo construir un servidor web básico usando Go

Compile este código del servidor web Go como un archivo ejecutable

Dejar un comentario

Cómo eliminar el aviso de solicitud de derechos de autor en la esquina derecha de la pantalla en Windows 10

Cómo eliminar el aviso de solicitud de derechos de autor en la esquina derecha de la pantalla en Windows 10

¿Ves una notificación de activación de Windows 10 en la esquina derecha de la pantalla? Este artículo le guiará sobre cómo eliminar el aviso de solicitud de derechos de autor en Windows 10.

Instrucciones de AZ sobre cómo instalar Windows 10 compilación 14393.222

Instrucciones de AZ sobre cómo instalar Windows 10 compilación 14393.222

Recientemente, Microsoft lanzó la última actualización acumulativa para usuarios de PC con Windows 10 llamada Build 14393.222. Esta actualización lanzada para Windows 10 corrige principalmente errores basados ​​en los comentarios de los usuarios y mejora la experiencia de rendimiento del sistema operativo.

Proteja su red informática con Bastion host en solo 3 pasos

Proteja su red informática con Bastion host en solo 3 pasos

¿Tiene computadoras en su red local que necesitan acceso externo? Usar un host bastión como guardián de su red puede ser una buena solución.

3 formas de borrar rápidamente todos los registros de eventos en Windows 10

3 formas de borrar rápidamente todos los registros de eventos en Windows 10

A veces es posible que necesites eliminar todos los registros de eventos antiguos a la vez. En esta guía, Quantrimang.com le mostrará 3 formas de eliminar rápidamente todos los registros de eventos en el Visor de eventos de Windows 10.

Cómo crear una tecla de Windows si tu teclado no está disponible

Cómo crear una tecla de Windows si tu teclado no está disponible

Si prefiere usar un teclado clásico antiguo, como el IBM Modelo M, que no incluye una tecla física de Windows, existe un método sencillo para agregar más, tomando prestada una tecla que no usa con frecuencia.

Cómo crear un modo de fondo transparente en Windows 10

Cómo crear un modo de fondo transparente en Windows 10

WindowTop es una herramienta que tiene la capacidad de atenuar todas las ventanas de aplicaciones y programas que se ejecutan en computadoras con Windows 10. O puede usar una interfaz de fondo oscuro en Windows.

Los métodos de IP falsos te ayudan a acceder de forma anónima

Los métodos de IP falsos te ayudan a acceder de forma anónima

En muchos artículos anteriores hemos mencionado que permanecer anónimo en línea es extremadamente importante. Cada año se filtra información privada, lo que hace que la seguridad en línea sea cada vez más necesaria. Esa es también la razón por la que deberíamos utilizar direcciones IP virtuales. ¡A continuación, aprenderemos sobre métodos para crear IP falsas!

Cómo desactivar la barra de idioma en la barra de tareas de Windows 8

Cómo desactivar la barra de idioma en la barra de tareas de Windows 8

La barra de idioma en Windows 8 es una barra de herramientas de idioma en miniatura diseñada para mostrarse automáticamente en la pantalla del escritorio. Sin embargo, mucha gente quiere ocultar esta barra de idioma en la barra de tareas.

Consejos para optimizar la velocidad de conexión a Internet de Linksys

Consejos para optimizar la velocidad de conexión a Internet de Linksys

Maximizar la velocidad de Internet es esencial para optimizar su conexión de red. Podrás tener una óptima experiencia de entretenimiento y trabajo utilizando computadoras, televisores con acceso a Internet, consolas de juegos, etc.

Cómo configurar WEP, WPA, WPA2 para el enrutador Linksys

Cómo configurar WEP, WPA, WPA2 para el enrutador Linksys

La conectividad inalámbrica es una necesidad hoy en día y, por eso, la seguridad inalámbrica es esencial para garantizar la seguridad en su red interna.