Les dejo un tip para transformar un JSON a estructura de Go, muy util cuando te pasan un JSON muy grande o complicado.
https://mholt.github.io/json-to-go/
Saludos, muy buen curso.
Introducción a Go
Mi primer programa en Go
Instalación en Mac y Windows
Instalar VS Code
Comandos básicos de Go
Analizando un programa en Go
Nuestra Primera Aplicación Go
Descripción del proyecto 1: Calculadora
Leer inputs desde la consola
Manejo de errores y uso de If
Switch
Lista de Tareas
Structs y Receivers
Descripción del proyecto 2: Lista de Tareas
Structs para Lista de Tareas
Punteros
Punteros en Structs
Uso de Slices
Ciclo For
Implementar For en Struct
Interfaces
¿Qué es una interfaz?
Maps
¿Por qué las Interfaces?
Creando la Interfaz Animal
Imprimiendo el contenido de una Página Web usando Interfaces
Goroutines y Channels
Introducción al problema de la Concurrencia
GoRoutines
Channels
Implementación de Goroutines y channels
Construyendo un Servidor Web
Ciclos While y For
Descripción de Servidor Web
Creando el Servidor
Manejando rutas en backend
¿Qué es un Middleware?
Manejando Request HTTP
Asignando Rutas HTTP
Agregando Middlewares
Agregando Multiples Middlewares
Agregando otro Middleware
Manejando POST
Manejando Modelos y JSON
Respondiendo Request JSON
Go Modules creando nuestro primer módulo en Go
Implementando nuestro primer módulo en Go
Conclusiones del Curso y siguientes pasos
No tienes acceso a esta clase
¡Continúa aprendiendo! Únete y comienza a potenciar tu carrera
Carlos Gonzales
Aportes 10
Preguntas 6
Les dejo un tip para transformar un JSON a estructura de Go, muy util cuando te pasan un JSON muy grande o complicado.
https://mholt.github.io/json-to-go/
Saludos, muy buen curso.
Les recomiendo esta página para formatear de json a struct/clase en cualquier lenguaje de programación 🥳🥳
package main
import (
"encoding/json"
"net/http"
)
type Middleware func(http.HandlerFunc) http.HandlerFunc
type MetaData interface{}
type User struct {
Name string `json:"name"`
Email string `json:"email"`
Phone string `json:"phone"`
}
func (u *User) ToJson() ([]byte, error) {
return json.Marshal(u)
}
Genial! Por fin devolvemos JSON
Creo que falto profundizar sobre que es ese texto “mágico”, que le cambia el nombre a mis atributos del struct al imprimirlos en un json.
Encontré una buena respuesta aqui: https://stackoverflow.com/questions/10858787/what-are-the-uses-for-tags-in-go
Si decoder.Decoder()
espera una interfaz como parametro, porque no nos da un error aqui:
err := decoder.Decode(&user)
si &user no es una interfaz, es un struct.
Cuando se agrega el json:name al final del struct, ¿se le ponen las comillas dobles o las simples? Porque la terminal me indica un error en ese caso.
Adjunto mi implementacion hasta el momento
Por lo que he visto las cookies de Credenciales no suelen guardar un codigo JSON con esa estructura, mas bien es parecida a esta:
<code>
eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJzdWIiOiIxMjM0NTY3ODkwIiwibmFtZSI6IkpvaG4gRG9lIiwiaWF0IjoxNTE2MjM5MDIyfQ.SflKxwRJSMeKKF2QT4fwpMeJf36POk6yJV_adQssw5c
Ya que de esta manera el JWT no puede ser modificado porque posee autentificacion.
Si quieren ver y leer como es el codigo de este JWT pueden visitar jwt.io, es una pagina que los hace legibles tal y como se pueden ver en la clase, ademas puede crear este codigo a partir de una estructura.
Evidentemente no permite observar la Password del token.
Y si quieren trabajar con un “Encoder” de JWT como ese con Golang, hay un paquete que se suele usar:
<code>
jwt "github.com/dgrijalva/jwt-go"
<code>
go get github.com/dgrijalva/jwt-go
¿Quieres ver más aportes, preguntas y respuestas de la comunidad?