Impostare CORS in Gin
Per impostazione predefinita Gin Gonic blocca le chiamate da server esterni.
E' comunque possibile impostare CORS attraverso una libreria apposita.
In questo articolo vediamo come fare.
Prima di tutto installiamola:
go get github.com/gin-contrib/cors
Qui sotto il codice:
package main
import (
"fmt"
"os"
"github.com/gin-contrib/cors"
"github.com/gin-gonic/gin"
)
func main() {
router := gin.Default()
router.SetTrustedProxies(nil)
config := cors.DefaultConfig()
config.AllowAllOrigins = true
config.AllowMethods = []string{"POST", "GET", "PUT", "OPTIONS"}
config.AllowHeaders = []string{"Origin", "Content-Type", "Authorization", "Accept", "User-Agent", "Cache-Control", "Pragma"}
config.ExposeHeaders = []string{"Content-Length"}
config.AllowCredentials = true
router.Use(cors.New(config))
// OTHER STUFF
port := os.Getenv("PORT")
if port == "" {
port = "8080"
}
fmt.Println("Server in asolto su http://localhost:" + port)
if err := router.Run(":" + port); err != nil {
os.Exit(1)
}
}
In questo caso ho sbloccato tutto.
Il codice è in produzione e quindi testato.
Enjoy!
go gin gonic cors
Commentami!