@SSSSTTTTAAAASSSS

CORS policy: No 'Access-Control-Allow-Origin'?

Добрый день/вечер!
Понимаю, что уже много раз поднимался вопрос по поводу CORS, но ответ на свой вопрос не нашел.
Есть написанный сайт на REACTjs и есть backend написанный на GOlang-е.
Не пойму, почему один метод PUT работает, а второй метод PUT не работает и выдает ошибку
Access to XMLHttpRequest at 'http://localhost:8082/recipes/c4bab80a-14a8-426b-b808-8b4bf9574920' from origin 'http://localhost:3000' has been blocked by CORS policy: No 'Access-Control-Allow-Origin' header is present on the requested resource.

При этом запросы GET, POST, DELETE - работают, один PUT - Тоже работает, а второй - нет.
на бекенде в хендлерах везде прописаны CORS через вызов фукнции setupCORS
func setupCORS(w *http.ResponseWriter, r *http.Request) {
	(*w).Header().Set("Access-Control-Allow-Origin", "*")
	(*w).Header().Set("Access-Control-Allow-Methods", "POST, PUT, GET, OPTIONS, PATCH, DELETE")
	(*w).Header().Set("Content-Type", "application/json")
	(*w).Header().Set("Access-Control-Allow-Headers", "Accept, Content-Type, Content-Length, Accept-Encoding, X-CSRF-Token, Authorization")
}

func (h *Handler) UpdateRecipe(w http.ResponseWriter, r *http.Request) {
	setupCORS(&w, r)
	if (*r).Method == "OPTIONS" {
		return
	}
// дальше идет код

Запрос с фронта делаю через axios:
static async putDishByID(changeDish) {
        const response = await axios.put('http://localhost:8082/recipes/update/' + changeDish.id, {
//поля структры
        })

Не пойму куда копать, и где что поменять...
Если есть мысли/идеи/подсказки буду премного благодарен)))
  • Вопрос задан
  • 588 просмотров
Решения вопроса 1
@SSSSTTTTAAAASSSS Автор вопроса
Благодаря помощи vilinyh Александр Павлюк Lynn «Кофеман»

Проблема была в невнимательности: не совпадали адреса запросов и в коде.
Вопрос решился.
Всем еще раз спаибо.
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы