بصورت کلی بخوام یک توضیحی بدم که دید کلی براتون ایجاد بشه، شما CORS رو یک محافظ در مرورگرها تصور کنید که تمامی درخواستها بین مرورگر و سرورو چک میکنه که آیا درخواست ارسالی از مبدأ(origin) به مقصد(host) آیا از یک آدرس تبعیت میکنند یا خیر. فرمتی که چک میشود protocol://domain:port این سه جزء هر قسمتش متفاوت باشه، نقض شرایط خواهد بود.
درخواستهای ارسالی میتونه سابمیت یک فرم ثبت نام باشه یا ارسال درخواست ajax به سرور باشه و ...
برای مثال همین صفحه سایت رو تصور کنید که پاسخ را مینویسیم و روی دکمه ی ارسال کلیک میکنیم. origin میشود: https://7learn.com:443
وقتی روی ارسال کلیک میشود درخواستی به سمت سرور ارسال میشود. اگر این درخواست به host ای با آدرس https://7learn.com:443 ارسال شود، same origin است و مبدأ-مقصد برابر است اما اگر فرضاً host بشه https://7learn.ac:443 اینجا از سمت مرورگر خطای CORS policy اتفاق میافتد.
البته این موضوع میتواند از سمت سرور مدیریت شود و در سمت سرور اجازه دسترسی هر آدرسی داده شود. بنابراین اگر جایی دستوراتی به شکل Access-Control-Allow-* دیدید اینها در سمت سرور ست میشوند برای اجازه ی دسترسی و کنترل درخواستهای سمت کلاینت.