I have an API made in Go, and a Front in Angular.
When i ping that url : https://myDomain/v1/users/sign/up Angular is trying to do an OPTIONS request.
I saw on some topics that I have to setup cors in my API, that's what I did:
In my main.go
file:
servMuxApi := http.NewServeMux()
user.SetUserRoute(servMuxApi)
c := cors.SetupCors()
handler := c.Handler(servMuxApi)
if err := http.ListenAndServe(servPort, handler); err != nil {
log.Fatal(err)
}
In the SetUserRoute
function i just have a HandleFunc
:
router.HandleFunc("/v1/users/sign/up", SignUpUser)
SetupCors
function :
func SetupCors() *cors.Cors {
return cors.New(cors.Options{
AllowedOrigins: []string{"http://localhost:8081*", "chrome-extension://coohjcphdfgbiolnekdpbcijmhambjff"},
AllowedMethods: []string{http.MethodGet, http.MethodPost, http.MethodPut, http.MethodPatch, http.MethodDelete, http.MethodOptions},
AllowCredentials: true,
OptionsPassthrough: true,
})
}
}
NB: the chrome extension you see is the Postman extension i use on Chrome.
With all of that set i'm still having errors on the Google Chrome console when i try my Angular front Sign Up form :
OPTIONS https://myDomain/v1/users/sign/up 503
Access to XMLHttpRequest at 'https://myDomain/v1/users/sign/up' from origin 'http://localhost:8081' has been blocked by CORS policy: Response to preflight request doesn't pass access control check: No 'Access-Control-Allow-Origin' header is present on the requested resource.
EDIT: the problem is, that, on the Chrome console, i don't see that Respone