← Strona główna

Błędy CORS w aplikacjach tworzonych przez AI

Aplikacja działa lokalnie, ale po deployu wszystko się sypie. Dowiedz się, dlaczego narzędzia AI pogarszają sprawę i jak to naprawić raz na zawsze.

⏱ 4 min czytania

Co to jest CORS i dlaczego się pojawia?

CORS (Cross-Origin Resource Sharing) to mechanizm bezpieczeństwa przeglądarki. Kiedy frontend na jednej domenie próbuje komunikować się z backendem na innej, przeglądarka blokuje żądanie — chyba że serwer wyraźnie na to pozwoli.

Na localhoście tego problemu nie ma, bo frontend i backend działają pod tym samym adresem. Dopiero po wdrożeniu — kiedy frontend siedzi np. na app.example.com, a API na api.example.com — przeglądarka zaczyna blokować żądania. Typowy scenariusz: aplikacja przechodzi wszystkie testy lokalnie, a po deployu nic nie działa.

CORS sam w sobie nie jest trudny do naprawienia. To kilka nagłówków na serwerze. Problem zaczyna się wtedy, kiedy poprosisz AI o pomoc.

Dlaczego narzędzia AI pogarszają CORS

Kiedy mówisz narzędziu AI „napraw CORS", ono nie rozumie granicy między frontendem a backendem. Przepisuje kod serwera — i przy okazji łamie importy, zapytania do bazy danych i kształt odpowiedzi JSON. Rozwiązujesz jeden problem, dostajesz trzy nowe.

Typowy przypadek: AI dodaje nagłówki CORS ręcznie do każdej funkcji Edge Function, przy okazji modyfikując logikę biznesową, którą nie powinno dotykać. W select() wstawia komentarze zamiast prawdziwych nazw kolumn. Zmienia kształt odpowiedzi, więc frontend przestaje rozumieć dane.

Narzędzia AI nie mają pojęcia o kontekście Twojego projektu. Nie widzą, co już działa. Traktują każdy plik jako odizolowany fragment i „naprawiają" go w izolacji — niszcząc integrację z resztą systemu.

Jak naprawić CORS bez rozbijania aplikacji

  1. Nie pozwalaj AI edytować kodu serwera. Błąd CORS to problem konfiguracji, nie logiki biznesowej. Ogranicz AI do frontendu — niech poprawia zapytania, nagłówki i URL-e po stronie klienta.
  2. Scentralizuj CORS w jednym helperze. Zamiast dodawać nagłówki do każdej funkcji osobno, stwórz mały moduł na granicy serwera, który obsługuje CORS dla wszystkich endpointów. Jedna zmiana, jedno miejsce.
  3. Trzymaj plik wejściowy mały. Główny plik Edge Function powinien importować moduły i delegować pracę. Prawdziwa logika niech żyje w osobnych plikach. Dzięki temu AI nie przepisze całej logiki, próbując dodać nagłówek.
  4. Zablokuj kształt odpowiedzi JSON. Zdefiniuj jasny kontrakt: jakie pola zwraca API, w jakim formacie. Jeśli AI zmieni kształt odpowiedzi, frontend natychmiast się wysypie — i to od razu widać.
  5. Odpytuj tylko istniejące kolumny. Nie wstawiaj komentarzy do ciągów select(). Baza danych nie rozumie komentarzy SQL w stringu JavaScript — i po cichu zwraca null zamiast danych.
  6. Dodaj logi i szybki self-test. Prosty endpoint zdrowia (/health) + strukturalne logi przy każdym zapytaniu wyłapią regresje, zanim dotrą do użytkowników.
Kluczowa zasada

CORS nie jest trudny do naprawienia. Problem polega na tym, że narzędzia AI nie rozumieją granicy między frontendem a backendem — i naprawiając jedno, psują drugie.

Przeczytaj też

CORS Cię blokuje?

Nie trać czasu na zgadywanie. Naprawimy konfigurację serwera, zabezpieczymy granicę frontend-backend i upewnimy się, że deploy przejdzie bez niespodzianek.

Zarezerwuj bezpłatną rozmowę →
Bezpłatna rozmowa Bez zobowiązań Odpowiedź w 24h