Hola a tod@s, en este nuevo artículo veremos como crear una aplicación web utilizando Golang/Go. Para desplegar nuestro código en Golang utilizando un servidor web, utilizaremos el módulo gorilla/mux. Este es un enrutador de solicitudes liviano, además despacha las solicitudes entrantes con su controlador respectivo.
Para instalar el modulo antes indicado, utilizaremos la consola de comandos y los siguientes comandos:
go get -u github.com/gorilla/mux
go install github.com/gorilla/mux
El argumento -u que pasamos es para indicar “actualización”, lo usamos para obtener la última versión.
Ahora veamos nuestro archivo go.mod para revisar lo que hemos instalado.
module github.com/culturetech/helloworld
go 1.16
require github.com/gorilla/mux v1.8.0
Todo está bien, el módulo ha sido instalado correctamente y se ha agregado este mismo en el archivo go.mod
Ahora debemos debemos hacer nuestro hello world dentro de la aplicación:
#main.go
package main
import (
"github.com/gorilla/mux"
"log"
"net/http"
"io"
)
func handler(w http.ResponseWriter, r *http.Request) {
io.WriteString(w, "Hola Mundo Culture Tech :-) \n")
io.WriteString(w, "Hello world Culture Tech :-) \n")
}
func router() *mux.Router {
r := mux.NewRouter()
r.HandleFunc("/", handler)
return r
}
func main() {
router := router()
log.Fatal(http.ListenAndServe(":8080", router))}
¿Qué hacen nuestras tres funciones?
func handler(w http.ResponseWriter, r *http.Request)
El controlador Mux siempre acepta dos parámetros por defecto y su tarea es resolver salida y entrada. w http.ResponseWriter espera un parámetro w con el tipo http.ResponseWriter, que es devuelto para representar algo al usuario final. r * http.Request contiene la información sobre la solicitud/petición del usuario guardado en un parámetro r.
func router() *mux.Router
La función inicializa un “enrutador” y esto lo hace con la variable r.
r: = mux.NewRouter ().
func main()
La función main() que creamos, configura un servidor HTTP para servir localmente en el puerto 8080.
Ahora veremos como nos va con nuestra aplicación web. Para eso ejecutaremos go build y go run main.go. Si todo va bien podemos abrir un navegador e ingresamos como url: http://localhost:8080
Como podemos ver, ya tenemos nuestra primera aplicación web en Golang!!!. Si bien es un ejemplo muy básico, es necesario para conocer como funciona este lenguaje, conocer nuevos módulos e instalar. Pronto veremos como hacer ejemplos más complejos, despliegues y muchas cosas más divertidas.
Como siempre son siempre bienvenidos sus comentarios, un gran abrazo.