Lorsque vous utilisez Rs.cors pour activer Cors sur un service Web Go, renvoyez des codes d'état HTTP autres que 200 (par exemple, retourner http.stausoomanyrequests) entraîne une erreur de Cors:
Accès à XMLHTTPQUEST à 'http: / / LOCALALRV: 3021 / Test? Statut = Toomany 'de l'origine' http: // localhost: 8080 'a été bloqué par la stratégie CORS: aucune en-tête «Access-Control-Autory-Origin» est présente sur la ressource demandée. P >
Utiliser Rs.cors n'est pas une exigence, mais je n'ai pas pu obtenir avec succès CORS travailler dans certains cas sans cela. P>
Voici quelques échantillons de code: P>
axios.get("http://okami:3021/test?status=toomany") .then(res => { console.log("stuff http://okami:3021/test result", res); }); //axios
3 Réponses :
Vous devez spécifier Cors, veuillez essayer ce code dans votre principale () {...}
Y a-t-il un moyen d'utiliser Rs.cors afin que CORS commence lorsqu'il existe un problème de Cors et que les codes d'erreur HTTP peuvent revenir lorsqu'il n'y a pas de problème de CORS? P>
sauf si vous gérerez CORS, vous obtiendrez cela comme une erreur, la solution de ce problème est donc de corriger Cors. P>
Utiliser Rs.cors n'est pas une exigence, mais j'étais incapable de recevoir avec succès des CORS de travailler dans certains cas sans cela. P> blockQuote>
Vous pouvez gérer des cors en réglant
http.responsewriter code> valeur d'en-tête. Vous pouvez le faire donc p>
xxx pré> ou remplacer "*" avec votre URL de l'extrémité avant. P> blockQquote>
La fonction renvoyée par LimitMidDleware Exécute avant em> le middleware Cors (l'argument suivant). Réorganisez vos gestionnaires: rtr := mux.NewRouter()
rtr.HandleFunc("/test", test).Methods("GET")
handler := cors.Default().Handler(limitMiddleware(rtr))
http.ListenAndServe(":3021", handler)