Sobes.tech
Middle+

Stretli ste sa niekedy s problémom CORS? Ako ste ho vyriešili?

sobes.tech AI

Odpoveď od AI

Áno, problém CORS (Cross-Origin Resource Sharing) sa často vyskytuje pri požiadavkách z frontendu na API umiestnené na inom doméne.

CORS je bezpečnostný mechanizmus prehliadača, ktorý blokuje požiadavky z jedného doménu na iný, ak server tieto požiadavky neumožní.

Ako to riešiť:

  • Na serveri je potrebné nakonfigurovať hlavičky odpovede, napríklad Access-Control-Allow-Origin, aby povolil požiadavky z potrebných domén.
  • Pre vývoj sa často používa proxy server, ktorý presmerováva požiadavky na API, aby obchádzal obmedzenia prehliadača.
  • V niektorých prípadoch je možné použiť JSONP alebo iné obchádzajúce metódy, ale sú zastarané.

Príklad konfigurácie CORS v Node.js s Express:

app.use((req, res, next) => {
  res.header('Access-Control-Allow-Origin', '*'); // alebo konkrétny domén
  res.header('Access-Control-Allow-Methods', 'GET,POST,PUT,DELETE');
  res.header('Access-Control-Allow-Headers', 'Content-Type');
  next();
});

Kľúčové je správne nakonfigurovať server, aby explicitne povolil požiadavky z potrebných zdrojov.