🥇 Servidores Web, Uso de cabeceras.

Una operación común es el uso de cabeceras HTTP, esta es información enviada que le indica al navegador como debe interpretar los datos. En os ejemplos anteriores hemos utilizado las cabeceras predeterminadas, pero si quisieramos por ejemplo enviar una respuesta en forma de un documento JSON, tendriamos que especificar dichas cabeceras.

w.Header().Set("Content-Type", "application/json; charset=utf-8")

En la línea anterior hemos indicado que el objeto http.ResponseWriter ha declarado una cabecera en donde se define el tipo de contenido Content-Type de tipo appllication/json y cuya codificación es UTF-8 charset=utf-8.

package main

import "net/http"

func Home(w http.ResponseWriter, r *http.Request) {
    if r.URL.Path != "/" {
        http.NotFound(w, r)
        return
    }
    w.Header().Set("Content-Type", "application/json; charset=utf-8")
    w.Write([]byte(`{"mensaje":"Hola Mundo"}`))
}

func main() {
    http.HandleFunc("/", Home)
    http.ListenAndServe(":8000", nil)
}

Ahora podemos realizar una petición nuevamente para comprobar que la respuesta es tipo json.

$ curl -is http://localhost:8000
HTTP/1.1 200 OK
Content-Type: application/json; charset=utf-8
Date: Sat, 20 Apr 2019 01:01:59 GMT
Content-Length: 24

{"mensaje":"Hola Mundo"}
Servidores Web, Error 404. Servidores Web, Content Type.
comments powered by Disqus