ADVERTISEMENT
Google AdSense Slot (headerLeaderboard)

Set your Publisher ID in src/config/ads.ts to display live ads.

AJAX & Fetch API Tutorial• 7 min read

CORS (Cross-Origin Resource Sharing) Demystified

Same-Origin Policy, Preflight OPTIONS requests, and server headers

CORS is a browser security mechanism that restricts scripts on one origin from accessing resources on a different origin unless the server explicitly grants permission via HTTP headers.

Understanding Same-Origin vs Cross-Origin

Origin definition: Protocol (https) + Domain (api.codexia.org) + Port (443). If any of the three differ, it is Cross-Origin.

Same-Origin Policy (SOP): Browsers block client-side scripts from reading responses from other origins by default.

Server Headers: The destination server must respond with Access-Control-Allow-Origin: * (or specific domain).

Preflight Requests: For non-simple requests (like POST with JSON), browsers automatically send a preliminary OPTIONS request before sending the actual payload.

Pro Tip

CORS is enforced strictly by the client browser, NOT the server. A curl command or Node.js script will never experience CORS errors.

ADVERTISEMENT
Google AdSense Slot (inContentBanner)

Set your Publisher ID in src/config/ads.ts to display live ads.

Test Yourself With Exercise

+15 XP

Where is CORS (Cross-Origin Resource Sharing) enforced?