Добрый день/вечер!
Понимаю, что уже много раз поднимался вопрос по поводу 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, {
//поля структры
})
Не пойму куда копать, и где что поменять...
Если есть мысли/идеи/подсказки буду премного благодарен)))