@ottilie.farrell
Для исправления ошибки CORS (Cross-Origin Resource Sharing) в Golang, вы можете использовать стандартный пакет "net/http"
. Вот пример кода, который включает заголовки CORS для всех запросов:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 |
package main import ( "net/http" ) func main() { mux := http.NewServeMux() mux.HandleFunc("/", func(w http.ResponseWriter, r *http.Request) { // Добавляем заголовки CORS w.Header().Set("Access-Control-Allow-Origin", "*") w.Header().Set("Access-Control-Allow-Methods", "GET, POST, PUT, DELETE") w.Header().Set("Access-Control-Allow-Headers", "Content-Type, Authorization") // Обработка запроса // ... // Возвращаем ответ w.WriteHeader(http.StatusOK) w.Write([]byte("Пример успешного запроса")) }) // Запуск сервера http.ListenAndServe(":8080", mux) } |
В приведенном выше примере для всех запросов добавляются заголовки Access-Control-Allow-Origin
, Access-Control-Allow-Methods
и Access-Control-Allow-Headers
. Значение "*"
в Access-Control-Allow-Origin
позволяет запросам с любого домена. Если вы хотите ограничить доступ только для определенных доменов, вы можете указать их вместо "*"
.