WordPress GO ဝန်ဆောင်မှုတွင် အခမဲ့ 1 နှစ် ဒိုမိန်းအမည် ကမ်းလှမ်းချက်

ဤဘလော့ဂ်ပို့စ်သည် ဝဘ်လုံခြုံရေး၏ အရေးပါသော အစိတ်အပိုင်းတစ်ခုဖြစ်သည့် Cross-Origin Resource Sharing (CORS) ကို ကျယ်ကျယ်ပြန့်ပြန့် အကျုံးဝင်ပါသည်။ ၎င်းတွင် CORS သည် ဘာလဲ၊ ၎င်း၏သမိုင်းကြောင်းနှင့် ဆင့်ကဲဖြစ်စဉ်နှင့်အတူ ဝဘ်အက်ပ်လီကေးရှင်းများအတွက် အဘယ်ကြောင့် အရေးကြီးကြောင်း ရှင်းပြသည်။ ၎င်းသည် CORS အသုံးပြုခြင်း၏ အဓိကအကျိုးကျေးဇူးများကို မီးမောင်းထိုးပြပြီး ရိုးရှင်းသောလမ်းညွှန်ချက်ဖြင့် ဖွဲ့စည်းမှုအဆင့်များကို ရှင်းပြသည်။ ၎င်းသည် နည်းပညာဆိုင်ရာအသေးစိတ်အချက်အလက်များကို ထည့်သွင်းစဉ်းစားကာ CORS အမှားအယွင်းများနှင့် ဖြေရှင်းချက်များကို အသေးစိတ်စစ်ဆေးသည်။ CORS လုံခြုံရေးကို မြှင့်တင်ရန်အတွက် မဟာဗျူဟာများနှင့် မူဝါဒ အကောင်အထည်ဖော်မှု နမူနာများကို တင်ပြထားပါသည်။ ၎င်းသည် CORS နှင့်ပတ်သက်သော ဘုံအထင်အမြင်လွဲမှားမှုများကိုလည်း ဖြေရှင်းပေးပြီး နားလည်ရန် အရေးကြီးဆုံးအချက်များကို အကျဉ်းချုပ်ဖော်ပြသည်။ ၎င်းသည် ဝဘ်ဆော့ဖ်ဝဲရေးဆွဲသူများအတွက် CORS အတွက် ပြည့်စုံသောလမ်းညွှန်ချက်ဖြစ်သည်။.
မူရင်းအရင်းအမြစ် CORS သည် ဝဘ်ဘရောက်ဆာများမှ မတူညီသော ဒိုမိန်းများမှ အရင်းအမြစ်များကို ဝင်ရောက်ကြည့်ရှုခြင်းမှ ခွင့်ပြုရန် သို့မဟုတ် ပိတ်ဆို့ရန် ဝဘ်စာမျက်နှာကို အသုံးပြုသည့် လုံခြုံရေး ယန္တရားတစ်ခုဖြစ်သည်။ အခြေခံအားဖြင့်၊ ၎င်းသည် ဝဘ်အပလီကေးရှင်းတစ်ခုအား ၎င်း၏ကိုယ်ပိုင်ဒိုမိန်းပြင်ပရှိ အရင်းအမြစ်များ (ဥပမာ၊ API များ၊ ဖောင့်များ၊ ရုပ်ပုံများ) ကို ထိန်းချုပ်ရန် ခွင့်ပြုထားသည်။ CORS သည် ခေတ်မီဝဘ်လုံခြုံရေး၏ အခြေခံအုတ်မြစ်ဖြစ်ပြီး ဝဘ်အက်ပလီကေးရှင်းများကို လုံခြုံစေရာတွင် အရေးပါသောအခန်းကဏ္ဍမှ ပါဝင်ပါသည်။.
CORS သည် စာမျက်နှာတစ်ခုတည်း အပလီကေးရှင်းများ (SPAs) နှင့် microservices ဗိသုကာများကဲ့သို့သော ခေတ်မီဝဘ်ဖွံ့ဖြိုးတိုးတက်ရေးနည်းလမ်းများတွင် အထူးအရေးကြီးပါသည်။ ဤအပလီကေးရှင်းများသည် ဒိုမိန်းများတစ်လျှောက် APIs နှင့် အခြားသောအရင်းအမြစ်များအပေါ်တွင် မှီခိုလေ့ရှိသည်။ ဤအရင်းအမြစ်များကို လုံခြုံစွာမျှဝေခြင်းကို သေချာစေခြင်းဖြင့် CORS သည် အန္တရာယ်ရှိသောဆိုက်များကို ထိလွယ်ရှလွယ်ဒေတာများဝင်ရောက်ခြင်းမှ တားဆီးပေးသည်။ CORS ယန္တရားမပါဘဲ၊ မည်သည့်ဝဘ်ဆိုက်မဆို JavaScript ကိုအသုံးပြု၍ အခြားဆိုက်၏အသုံးပြုသူဒေတာကို ခိုးယူရန် သို့မဟုတ် ပြုပြင်မွမ်းမံနိုင်သည်။.
CORS သည် ဝဘ်အက်ပလီကေးရှင်းများနှင့် အသုံးပြုသူဒေတာကို ကာကွယ်ရန် Same-Origin Policy (SOP) နှင့် တွဲဖက်လုပ်ဆောင်သောကြောင့် ဝဘ်လုံခြုံရေးအတွက် အရေးကြီးပါသည်။ SOP သည် ဝဘ်စာမျက်နှာအား တူညီသော ဒိုမိန်း၊ ပရိုတိုကောနှင့် ဆိပ်ကမ်းများတွင်သာ အရင်းအမြစ်များကို ဝင်ရောက်ကြည့်ရှုခွင့်ပေးသည်။ အခြားတစ်ဖက်တွင် CORS သည် အချို့သောအခြေအနေများအောက်တွင် မတူညီသောဒိုမိန်းများမှ ရင်းမြစ်များကို ဝင်ရောက်ကြည့်ရှုခွင့်ပေးခြင်းဖြင့် SOP ကို ဖြေလျှော့ပေးသည်။ ၎င်းသည် လုံခြုံရေးကို ထိန်းသိမ်းထားစဉ်တွင် ဝဘ်အက်ပလီကေးရှင်းများကို ပိုမိုပြောင်းလွယ်ပြင်လွယ်နှင့် လုပ်ဆောင်နိုင်စေပါသည်။.
CORS ၏ မှန်ကန်သောဖွဲ့စည်းပုံသည် ဝဘ်အက်ပလီကေးရှင်းများ၏ လုံခြုံရေးအတွက် အရေးကြီးပါသည်။ အရေးကြီးသောအရေးပါမှု မှားယွင်းသတ်မှတ်ထားသော CORS မူဝါဒသည် ဝဘ်အက်ပလီကေးရှင်းများကို လုံခြုံရေးဆိုင်ရာ အားနည်းချက်အမျိုးမျိုးကို ထိခိုက်စေနိုင်သည်။ ထို့ကြောင့်၊ CORS မည်ကဲ့သို့ အလုပ်လုပ်ပုံနှင့် ၎င်းကို မှန်ကန်စွာ configure လုပ်ရမည်ကို နားလည်ခြင်းသည် ဝဘ်ဆော့ဖ်ဝဲရေးသားသူတိုင်းအတွက် အရေးကြီးပါသည်။.
မူရင်းအရင်းအမြစ် CORS သည် ခေတ်မီဝဘ်အက်ပလီကေးရှင်းများ၏ မရှိမဖြစ်အစိတ်အပိုင်းတစ်ခုဖြစ်သော်လည်း ဤနည်းပညာ၏ ဇစ်မြစ်နှင့် ဆင့်ကဲဖြစ်စဉ်သည် ၎င်း၏လက်ရှိအရေးပါမှုကို နားလည်ရန် အရေးကြီးပါသည်။ အစပိုင်းတွင်၊ အရင်းအမြစ်တစ်ခုအား ၎င်း၏ကိုယ်ပိုင်ဒိုမိန်းမှ အရင်းအမြစ်များကိုသာ ဝင်ရောက်ကြည့်ရှုခွင့်ပေးသည့် Same-Origin Policy ဖြင့် ဝဘ်ဘရောက်ဆာများကို ကန့်သတ်ထားသည်။ ၎င်းသည် မတူညီသော ဒိုမိန်းများမှ ဒေတာများကို ပြန်လည်ရယူရန် လိုအပ်သည့် ခေတ်မီဝဘ်အက်ပ်လီကေးရှင်းများ၏ ဖွံ့ဖြိုးတိုးတက်မှုကို သိသိသာသာ ကန့်သတ်ထားသည်။ CORS သည် ဤကန့်သတ်ချက်များကို ကျော်လွှားပြီး လုံခြုံသော ရင်းမြစ်ဖြတ်ကျော် တောင်းဆိုမှုများကို ဖွင့်ရန် ဖန်တီးထားသည်။.
CORS ၏ ဖွံ့ဖြိုးတိုးတက်မှုသည် ဝဘ်ဆော့ဖ်ဝဲရေးသားသူများ ရင်ဆိုင်နေရသော လက်တွေ့ကျသော စိန်ခေါ်မှုများကို တုံ့ပြန်သည့်အနေဖြင့် စတင်ခဲ့သည်။ အထူးသဖြင့်၊ မတူကွဲပြားသောရင်းမြစ်များမှ ဒေတာများကို စုစည်းရန်နှင့် APIs များကို ဝင်ရောက်အသုံးပြုရန် လိုအပ်ပြီး ဝဘ်အက်ပလီကေးရှင်းများကို ပိုမိုသွက်လက်ပြီး စွမ်းဆောင်မှုကြွယ်ဝစေရန်အတွက် ဖြေရှင်းချက်တစ်ခု လိုအပ်ပါသည်။ ဤလိုအပ်ချက်ကိုဖြေရှင်းရန်၊ ဘရောက်ဆာများနှင့် ဆာဗာများ မည်သို့အပြန်အလှန်အကျိုးသက်ရောက်သင့်သည်ကို သတ်မှတ်ရန် World Wide Web Consortium (W3C) မှ စံနှုန်းများကို ချမှတ်ခဲ့သည်။ ဤစံနှုန်းများသည် လုံခြုံရေးအားနည်းချက်များကို လျှော့ချစေပြီး developer များအား ပိုမိုပြောင်းလွယ်ပြင်လွယ် ပေးဆောင်ရန် ရည်ရွယ်ပါသည်။.
| တစ်နှစ် | ဖွံ့ဖြိုးတိုးတက်ရေး | ရှင်းလင်းချက် |
|---|---|---|
| ၂၀၀၀ ခုနှစ်များအစောပိုင်း | ပထမလိုအပ်ချက်များ | ဝဘ် developer များသည် မတူညီသော domain များမှ data များကို ဆွဲထုတ်ရန် လိုအပ်ကြောင်း သဘောပေါက်ကြသည်။. |
| 2004 | ပထမဆုံးဖြေရှင်းချက် | JSONP ကဲ့သို့ ဖြေရှင်းနည်းများ ထွက်ပေါ်လာသော်လည်း ၎င်းတို့တွင် လုံခြုံရေး အားနည်းချက်များ ပါရှိသည်။. |
| 2009 | W3C လေ့လာရေး | W3C သည် CORS အတွက် စံနှုန်းများကို စတင်တီထွင်ခဲ့သည်။. |
| 2010+ | တွင်တွင်ကျယ်ကျယ် သုံးသည်။ | CORS သည် ခေတ်မီဘရောက်ဆာများမှ ပံ့ပိုးမှုစတင်နေပြီဖြစ်ပြီး တွင်ကျယ်စွာအသုံးပြုလာပါသည်။. |
CORS ၏ ဆင့်ကဲဖြစ်စဉ်သည် ဝဘ်လုံခြုံရေးနှင့် လုပ်ဆောင်နိုင်စွမ်းတို့ကြား ချိန်ခွင်လျှာအပေါ် တစိုက်မတ်မတ် အာရုံစိုက်ထားသည်။ အစောပိုင်း အကောင်အထည်ဖော်မှုများသည် ရိုးရှင်းသောတောင်းဆိုမှုများအတွက် လုံလောက်သော်လည်း၊ ပိုမိုရှုပ်ထွေးသော အခြေအနေများကို ပံ့ပိုးရန်အတွက် ၎င်းတို့ကို အချိန်နှင့်အမျှ ချဲ့ထွင်ထားသည်။ ဥပမာအားဖြင့်၊ preflight တောင်းဆိုမှု ယန္တရားသည် ဆာဗာမှ ပေးထားသော ရင်းမြစ် ဖြတ်ကျော် တောင်းဆိုမှုကို ခွင့်ပြုခြင်း ရှိ၊မရှိ စစ်ဆေးခြင်းဖြင့် နောက်ထပ် လုံခြုံရေး အလွှာတစ်ခုကို ပံ့ပိုးပေးပါသည်။ ဤနှင့် အလားတူသော တိုးတက်မှုများသည် ခေတ်မီဝဘ်အက်ပလီကေးရှင်းများ၏ လုံခြုံပြီး ထိရောက်စွာ လည်ပတ်နိုင်စေမည့် အခြေခံနည်းပညာတစ်ခု ဖြစ်လာစေခဲ့သည်။.
CORS ဖွံ့ဖြိုးတိုးတက်ရေး အဆင့်များ
ယနေ့ CORS သည် ဝဘ်အပလီကေးရှင်းများမှ ဒေတာများကို အမျိုးမျိုးသော အရင်းအမြစ်များမှ လုံခြုံစွာ ဖလှယ်နိုင်စေမည့် အရေးကြီးသော ယန္တရားတစ်ခုဖြစ်သည်။ သို့သော်၊, သံကြိုးများ‘လုံခြုံရေး အားနည်းချက်များကို ကာကွယ်ရန်အတွက် CORS ၏ မှန်ကန်သောဖွဲ့စည်းပုံနှင့် အကောင်အထည်ဖော်မှုသည် အရေးကြီးပါသည်။ မှားယွင်းသတ်မှတ်ထားသော CORS မူဝါဒသည် အန္တရာယ်ရှိသော သရုပ်ဆောင်များအား အထိခိုက်မခံသည့်ဒေတာကို ဝင်ရောက်ကြည့်ရှုခွင့်ပေးနိုင်သည်။ ထို့ကြောင့်၊ ဝဘ်ဆော့ဖ်ဝဲရေးသားသူများသည် CORS ၏အခြေခံမူများနှင့် သင့်လျော်သောဖွဲ့စည်းပုံနည်းလမ်းများကို ကောင်းစွာနားလည်သဘောပေါက်ရပါမည်။.
မူရင်းအရင်းအမြစ် CORS သည် ခေတ်မီဝဘ်အပလီကေးရှင်းများ၏ လုံခြုံရေးနှင့် လုပ်ဆောင်နိုင်စွမ်းကို မြှင့်တင်ရန်အတွက် မရှိမဖြစ်လိုအပ်သော ယန္တရားတစ်ခုဖြစ်သည်။ ၎င်းသည် တူညီသောဇာစ်မြစ်ကို မမျှဝေသော အရင်းအမြစ်များကြား လုံခြုံသောဒေတာဖလှယ်မှုကို ဖွင့်ပေးခြင်းဖြင့် ဝဘ်ဆော့ဖ်ဝဲရေးဆွဲသူများအား သိသာထင်ရှားသော ပျော့ပြောင်းမှုကို ပေးဆောင်သည်။ ဤပြောင်းလွယ်ပြင်လွယ်သည် ဒိုမိန်းများတစ်လျှောက် ဝန်ဆောင်မှုများ၏ ပေါင်းစပ်မှုကို လွယ်ကူချောမွေ့စေပြီး သုံးစွဲသူအတွေ့အကြုံကို ကြွယ်ဝစေသည်။.
CORS ၏အဓိကအကျိုးကျေးဇူးများထဲမှတစ်ခုမှာဝဘ်ဘရောက်ဆာများကိုအကောင်အထည်ဖော်ခြင်းဖြစ်သည်။ တူညီသောမူလမူဝါဒ မူလအစတည်းက ချမှတ်ထားသော ကန့်သတ်ချက်များကို ကျော်ဖြတ်သည်။ ဤမူဝါဒသည် ဝဘ်စာမျက်နှာအား တူညီသော ပရိုတိုကော၊ တူညီသော ဆိပ်ကမ်း (သတ်မှတ်ထားလျှင်) နှင့် တူညီသော လက်ခံဆောင်ရွက်ပေးသည့် အရင်းအမြစ်များကိုသာ ဝင်ရောက်ကြည့်ရှုခွင့်ပေးသည်။ CORS မှ တောင်းဆိုမှုများကို ခွင့်ပြုရန် မည်သည့်ဇာစ်မြစ်ကို သတ်မှတ်ရန် ဆာဗာများကို ခွင့်ပြုခြင်းဖြင့် ဤကန့်သတ်ချက်များကို ဘေးကင်းစွာ ဖြေလျှော့ပေးသည်။.
CORS ၏ အားသာချက်များ
အောက်ပါဇယားတွင်၊ သင်သည် CORS ၏ အဓိကအင်္ဂါရပ်များနှင့် အားသာချက်များကို ပိုမိုအသေးစိတ်လေ့လာနိုင်သည်-
| ထူးခြားချက် | ရှင်းလင်းချက် | အားသာချက် |
|---|---|---|
| တိုင်းရင်းသားအချင်းချင်း တောင်းဆိုမှုများ | မတူညီသောဒိုမိန်းများမှ HTTP တောင်းဆိုမှုများ။. | ၎င်းသည် ဒေတာမျှဝေခြင်းနှင့် ဝန်ဆောင်မှုပေါင်းစည်းခြင်းကို လုပ်ဆောင်ပေးသည်။. |
| Preflight တောင်းဆိုမှုများ | ရွေးချယ်စရာများ ဆာဗာ၏ CORS မူဝါဒကို စစ်ဆေးခြင်း နည်းလမ်းဖြင့် တောင်းဆိုမှုများ။. |
၎င်းသည် လုံခြုံသောဒေတာလွှဲပြောင်းမှုကို သေချာစေပြီး အလားအလာရှိသော လုံခြုံရေးအားနည်းချက်များကို တားဆီးပေးသည်။. |
| ခွင့်ပြုထားသော မူရင်းများ | ဆာဗာမှ တောင်းဆိုချက်များကို ခွင့်ပြုသည့် ဒိုမိန်းများစာရင်း။. | ထိန်းချုပ်ပြီး ဘေးကင်းသော ဝင်ရောက်ခွင့်ကို ပေးသည်။. |
| အထောက်အထားထောက်ခံမှု | cookies နှင့် authentication headers များကဲ့သို့သော အချက်အလက်မျှဝေခြင်းကို ဖွင့်ပါ။. | သုံးစွဲသူအစည်းအဝေးများနှင့် ပုဂ္ဂိုလ်ရေးသီးသန့် အတွေ့အကြုံများကို ပံ့ပိုးပေးသည်။. |
CORS ၏ မှန်ကန်သောဖွဲ့စည်းပုံသည် ဝဘ်အပလီကေးရှင်းများ၏ လုံခြုံရေးအတွက် အရေးကြီးပါသည်။ မှားယွင်းသတ်မှတ်ထားသော CORS မူဝါဒသည် တိုက်ခိုက်သူများအား အထိခိုက်မခံသည့်ဒေတာကို ဝင်ရောက်ကြည့်ရှုရန် သို့မဟုတ် အန္တရာယ်ရှိသောကုဒ်ကို လုပ်ဆောင်ရန် ခွင့်ပြုနိုင်သည်။ ထို့ကြောင့်၊ ဝဘ်လုံခြုံရေးကို သေချာစေရန် CORS ဖွဲ့စည်းမှုပုံစံကို ဂရုတစိုက်စီစဉ်ခြင်းနှင့် အကောင်အထည်ဖော်ခြင်းသည် အရေးကြီးပါသည်။.
မူရင်းအရင်းအမြစ် CORS ဖွဲ့စည်းမှုပုံစံသည် သင့်ဝဘ်အက်ပလီကေးရှင်းများကို လုံခြုံစေရန်နှင့် မတူညီသောအရင်းအမြစ်များကြားတွင် ဒေတာဖလှယ်မှုကို ချောမွေ့စေရန်အတွက် အရေးကြီးပါသည်။ ဤဖွဲ့စည်းပုံသည် သင့်အား ဒိုမိန်းများတစ်လျှောက် အရင်းအမြစ်များကို ဝဘ်စာမျက်နှာ၏ ဝင်ရောက်ခွင့်ကို ထိန်းချုပ်နိုင်စေပါသည်။ မှားယွင်းစွာဖွဲ့စည်းထားသော CORS မူဝါဒသည် လုံခြုံရေးဆိုင်ရာ အားနည်းချက်များကို ဖြစ်ပေါ်စေနိုင်သော်လည်း မှန်ကန်စွာပြင်ဆင်ထားသော CORS မူဝါဒသည် သင့်အပလီကေးရှင်း၏လုံခြုံရေးကို တိုးမြင့်စေပြီး ၎င်း၏လုပ်ဆောင်ချက်ကို ချောမွေ့စေရန် သေချာစေသည်။.
CORS ဖွဲ့စည်းမှုပုံစံကို မစတင်မီ၊ သင့်အပလီကေးရှင်း၏လိုအပ်ချက်များနှင့် ၎င်းဝင်ရောက်ရန် လိုအပ်သည့်အရင်းအမြစ်များကို ဆုံးဖြတ်ရန် အရေးကြီးသည်။ ၎င်းသည် မည်သည့်ဒိုမိန်းများကို ယုံကြည်ပြီး မည်သည့် HTTP နည်းလမ်းများ (GET၊ POST၊ PUT၊ DELETE စသည်) ကို ခွင့်ပြုသင့်သည်ကို နားလည်ရန် ကူညီပေးပါမည်။ ဤခွဲခြမ်းစိတ်ဖြာမှုသည် နောက်ဆက်တွဲဖွဲ့စည်းပုံဆိုင်ရာ အဆင့်များနှင့်ပတ်သက်၍ ပိုမိုအသိဥာဏ်ရှိသော ဆုံးဖြတ်ချက်များချနိုင်စေမည်ဖြစ်သည်။.
CORS ဖွဲ့စည်းမှုအတွင်း၊ ဆာဗာပေါ်တွင် သင့်လျော်သော HTTP ခေါင်းစီးများကို သတ်မှတ်ရန် အရေးကြီးသည်။ Access-Control-Allow-Origin ခေါင်းစီးသည် မည်သည့်ဒိုမိန်းများသည် အရင်းအမြစ်ကို ဝင်ရောက်ကြည့်ရှုနိုင်သည်ကို သတ်မှတ်သည်။ Access-Control-Allow-Methods ခေါင်းစီးသည် HTTP နည်းလမ်းများကို အသုံးပြုနိုင်သည့်အရာကို သတ်မှတ်သည်။ Access-Control-Allow-Headers သည် တောင်းဆိုချက်တွင် စိတ်ကြိုက်ခေါင်းစီးများကို ထည့်သွင်းနိုင်သည်ကို သတ်မှတ်ပေးပါသည်။ ဤခေါင်းစီးများကို စနစ်တကျ ပြင်ဆင်သတ်မှတ်ခြင်းသည် သင့်လျှောက်လွှာကို လုံလုံခြုံခြုံနှင့် လိုက်လျောညီထွေဖြစ်စေကြောင်း သေချာစေသည်။.
| HTTP ခေါင်းစီး | ရှင်းလင်းချက် | နမူနာတန်ဖိုး |
|---|---|---|
| Access-Control-Allow-Origin | ခွင့်ပြုထားသော အရင်းအမြစ်ဒိုမိန်းများ | https://example.com |
| Access-Control-Allow-Methods | HTTP နည်းလမ်းများကို ခွင့်ပြုထားသည်။ | GET၊ ပို့စ်၊ PUT |
| Access-Control-Allow-Headers | စိတ်ကြိုက်ခေါင်းစဉ်များကို ခွင့်ပြုထားသည်။ | အကြောင်းအရာ-အမျိုးအစား၊ ခွင့်ပြုချက် |
| Access-Control-Allow-credentials | ကွတ်ကီးများကို ပို့ခွင့်မပြုပါ။ | အမှန် |
CORS အမှားများကို မှန်ကန်စွာ ကိုင်တွယ်ရန်နှင့် သင့်အသုံးပြုသူများအတွက် အဓိပ္ပာယ်ရှိသော တုံ့ပြန်ချက်ပေးရန် အရေးကြီးပါသည်။ ဘရောက်ဆာ ကွန်ဆိုးလ်တွင် ပေါ်လာသော CORS အမှားများသည် မကြာခဏ မှားယွင်းသော CORS မူဝါဒ၏ လက္ခဏာတစ်ခု ဖြစ်သည်။ ဤအမှားများကိုဖြေရှင်းရန်၊ သင်၏ဆာဗာဘက်ခြမ်းဖွဲ့စည်းပုံကိုစစ်ဆေးပြီး လိုအပ်သောပြင်ဆင်မှုများပြုလုပ်ပါ။ ထို့အပြင် သင့်လျှောက်လွှာ၏ လုံခြုံရေးကို မြှင့်တင်ရန်၊ သံကြိုးများ သင့်မူဝါဒများကို ပုံမှန်စစ်ဆေးပြီး ၎င်းတို့ကို အပ်ဒိတ်လုပ်ထားပါ။.
မူရင်းအရင်းအမြစ် CORS သည် ဝဘ်ဘရောက်ဆာများကို မူရင်းတစ်ခုမှ တင်ထားသော ဝဘ်စာမျက်နှာများကို မတူညီသော အရင်းအမြစ်များမှ အရင်းအမြစ်များကို ဝင်ရောက်ကြည့်ရှုခွင့်ပေးသည့် ယန္တရားတစ်ခုဖြစ်သည်။ အခြေခံအားဖြင့်၊ ၎င်းသည် မတူညီသော ဒိုမိန်း၊ ပရိုတိုကော သို့မဟုတ် ဆိပ်ကမ်းမှ အရင်းအမြစ်များကို တောင်းဆိုရန် ဝဘ်စာမျက်နှာကို ခွင့်ပြုသည်။ ခေတ်မီဝဘ်အက်ပ်လီကေးရှင်းများ၏ တောင်းဆိုချက်များကို ဖြည့်ဆည်းရန်အတွက် ဤယန္တရားသည် အရေးကြီးပါသည်။ သို့ရာတွင်၊ မှန်ကန်စွာပြင်ဆင်သတ်မှတ်ခြင်းမပြုပါက၊ ၎င်းသည် ပြင်းထန်သောလုံခြုံရေးအန္တရာယ်များကို ဖြစ်ပေါ်စေနိုင်သည်။.
CORS ၏နည်းပညာဆိုင်ရာအသေးစိတ်အချက်အလက်များကိုမလေ့လာမီ၊ မူရင်းသဘောတရားကိုနားလည်ရန်အရေးကြီးပါသည်။ အရင်းအမြစ်တစ်ခုတွင် ပရိုတိုကော (http/https)၊ ဒိုမိန်း (example.com) နှင့် ဆိပ်ကမ်း (80/443) တို့ ပေါင်းစပ်ပါဝင်ပါသည်။ ဤအစိတ်အပိုင်းသုံးမျိုးတွင် ကွဲပြားပါက အရင်းအမြစ်နှစ်ခုကို ကွဲပြားသည်ဟု ယူဆပါသည်။ CORS သည် ဘရောက်ဆာများမှ လုပ်ဆောင်သည့် လုံခြုံရေးတိုင်းတာမှုတစ်ခုဖြစ်သည့် မူလမူလမူဝါဒအပေါ် အခြေခံထားသည်။.
| ဇာတ်လမ်း | အရင်းအမြစ်တောင်းဆိုခြင်း။ | ပစ်မှတ်အရင်းအမြစ် | CORS လိုအပ်ပါသလား။ |
|---|---|---|---|
| Domain အတူတူပါပဲ။ | http://example.com | http://example.com/api | မရှိ |
| မတူညီသောဆိပ်ကမ်း | http://example.com:8080 | http://example.com:3000/api | ဟုတ်ကဲ့ |
| မတူညီသော ပရိုတိုကော | http://example.com | https://example.com/api | ဟုတ်ကဲ့ |
| Domain အမျိုးမျိုး | http://example.com | http://api.example.com/api | ဟုတ်ကဲ့ |
CORS ကို HTTP ခေါင်းစီးများမှတစ်ဆင့် ဆာဗာဘက်တွင် ထိန်းချုပ်ထားသည်။ ဘရောင်ဇာတစ်ခုမှ မူရင်းတောင်းဆိုမှုကို ပြုလုပ်သောအခါ၊ ဆာဗာသည် သတ်မှတ်ထားသော CORS ခေါင်းစီးများဖြင့် တုံ့ပြန်သည်။ ဤခေါင်းစီးများသည် မည်သည့်အရင်းအမြစ်များကို ဝင်ရောက်ခွင့်ပြုထားကြောင်း၊ မည်သည့် HTTP နည်းလမ်းများ (GET၊ POST စသည်ဖြင့်) ကို အသုံးပြုနိုင်ပြီး မည်သည့် စိတ်ကြိုက်ခေါင်းစီးများကို ပေးပို့နိုင်သည်ကို ဖော်ပြပါသည်။ ဆာဗာမှ ပေးပို့သော အရေးကြီးဆုံး ခေါင်းစီးမှာ, Access-Control-Allow-Origin ဤခေါင်းစီးသည် မည်သည့်အရင်းအမြစ်များကို အသုံးပြုခွင့်ရှိသည်ကို သတ်မှတ်ပေးသည်။ တန်ဖိုးသည် အရင်းအမြစ်တစ်ခုတည်း၊ အရင်းအမြစ်များစွာ သို့မဟုတ် သင်္ကေတတစ်ခု (*) ဖြစ်နိုင်သည်။ wildcard စာလုံးကိုအသုံးပြုခြင်းဖြင့် အရင်းအမြစ်အားလုံးကို အသုံးပြုခွင့်ပေးသည်၊ သို့သော် ၎င်းသည် လုံခြုံရေးအန္တရာယ်ဖြစ်နိုင်သည်။.
CORS ယန္တရားသည် တောင်းဆိုမှု အမျိုးအစား နှစ်ခုကို ပံ့ပိုးသည်- ရိုးရှင်းသော တောင်းဆိုချက်များနှင့် အကြိုတောင်းဆိုမှုများ။ ရိုးရှင်းသော တောင်းဆိုချက်များသည် အချို့သော အခြေအနေများနှင့် ကိုက်ညီသော တောင်းဆိုမှုများ (ဥပမာ၊ GET၊ HEAD သို့မဟုတ် POST နည်းလမ်းများကို အသုံးပြု၍ သီးခြား ခေါင်းစီးများကို အသုံးပြုခြင်း)။ အခြားတစ်ဖက်တွင်မူ Preflight တောင်းဆိုမှုများသည် ပိုမိုရှုပ်ထွေးသော တောင်းဆိုမှုများဖြစ်သည်။ အမှန်တကယ် တောင်းဆိုချက်ကို လုံခြုံစွာ ပေးပို့နိုင်ကြောင်း အတည်ပြုရန် OPTIONS နည်းလမ်းကို အသုံးပြု၍ ပဏာမတောင်းဆိုချက်တစ်ခုကို ဆာဗာသို့ ပေးပို့ပါသည်။.
CORS သည် ဝဘ်အက်ပလီကေးရှင်းများ၏ လုံခြုံရေးကို တိုးမြှင့်ရန် ဒီဇိုင်းထုတ်ထားသော်လည်း မှားယွင်းစွာ ပြင်ဆင်သတ်မှတ်ထားသည့်အခါ လုံခြုံရေး အားနည်းချက်များကို ဖန်တီးနိုင်သည်။ ဥပမာအားဖြင့်, Access-Control-Allow-Origin ခေါင်းစဉ်ရှိ သင်္ကေတအက္ခရာ (*) ကို အသုံးပြုခြင်းသည် အန္တရာယ်ရှိသော ဝဘ်ဆိုက်တစ်ခုအား ထိလွယ်ရှလွယ် ဒေတာများကို ဝင်ရောက်ကြည့်ရှုခွင့်ပေးနိုင်သည်။ ထို့ကြောင့်၊, မည်သည့်အရင်းအမြစ်များကို သုံးစွဲခွင့်ပြုသည်ကို ဂရုတစိုက်ဆုံးဖြတ်ရန် အရေးကြီးပါသည်။.
လုံခြုံရေးအရ ထည့်သွင်းစဉ်းစားရမည့် နောက်ထပ်အချက်မှာ၊, Access-Control-Allow-credentials ဤခေါင်းစီးသည် အထောက်အထားများ (ကွတ်ကီးများ၊ HTTP စစ်မှန်ကြောင်းအထောက်အထားများ) ကို မူရင်း ဖြတ်ကျော်တောင်းဆိုမှုများဖြင့် ပေးပို့ခွင့်ပြုသည်။ ဤခေါင်းစီးအား မတော်တဆဖွင့်ထားလျှင်၊ ဆိုက်ကပ်ထားသော ဇာတ်ညွှန်းရေးခြင်း (XSS) ကဲ့သို့သော တိုက်ခိုက်မှုများသည် ပိုမိုအန္တရာယ်ရှိလာနိုင်သည်။.
CORS ဖွဲ့စည်းမှုပုံစံသည် စွမ်းဆောင်ရည်ကိုလည်း သက်ရောက်မှုရှိနိုင်သည်။ Preflight တောင်းဆိုချက်များသည် မူရင်းတောင်းဆိုချက်တစ်ခုစီအတွက် နောက်ထပ် HTTP တောင်းဆိုချက်တစ်ခု ပေးပို့ရစေသည်။ အထူးသဖြင့် မကြာခဏ ကူးယူထားသော မူရင်းတောင်းဆိုမှုများ ပြုလုပ်သည့် အပလီကေးရှင်းများအတွက် ၎င်းသည် စွမ်းဆောင်ရည်ကို ထိခိုက်စေနိုင်သည်။ ထို့ကြောင့်၊ preflight တောင်းဆိုမှုများကို လျှော့ချရန် အမျိုးမျိုးသော optimization နည်းပညာများကို အသုံးပြုနိုင်သည်။ ဥပမာအားဖြင့်၊ ရိုးရှင်းသောတောင်းဆိုမှုများ သို့မဟုတ် server-side caching ယန္တရားများကိုအသုံးပြုခြင်းဖြင့် စွမ်းဆောင်ရည်ကို တိုးတက်စေနိုင်သည်။.
CORS ဖွဲ့စည်းမှုပုံစံကို မှန်ကန်စွာ စစ်ဆေးခြင်းနှင့် စောင့်ကြည့်ခြင်းသည် အရေးကြီးပါသည်။ ဘရောက်ဆာ developer ကိရိယာများ သို့မဟုတ် သီးသန့် CORS စမ်းသပ်ကိရိယာများကို အသုံးပြု၍ CORS အမှားများကို ဖော်ထုတ်ပြီး ဖြေရှင်းနိုင်ပါသည်။ ထို့အပြင် CORS ခေါင်းစီးများကို မှန်ကန်စွာသတ်မှတ်ထားကြောင်း သေချာစေရန် ပုံမှန်ဆာဗာဘက်ခြမ်းစစ်ဆေးမှုများ ပြုလုပ်သင့်သည်။.
မူရင်းအရင်းအမြစ် CORS အမှားများသည် ဝဘ်ဖွံ့ဖြိုးတိုးတက်မှုတွင် ကြုံတွေ့ရလေ့ရှိသော ပြဿနာတစ်ခုဖြစ်သည်။ မတူညီသောဒိုမိန်းတစ်ခုမှ အရင်းအမြစ်များ (ဥပမာ၊ JavaScript ဖိုင်များ၊ CSS သို့မဟုတ် API ဒေတာ) ကို ဝဘ်စာမျက်နှာမှ ဝင်ရောက်ရန် ကြိုးပမ်းသောအခါတွင် ဤအမှားများ ဖြစ်ပေါ်လာပါသည်။ လုံခြုံရေးအကြောင်းပြချက်များအတွက်၊ ဘရောက်ဆာများသည် မူလမူလအတိုင်း မတူညီသောမူရင်းများမှ တောင်းဆိုမှုများကို ပိတ်ဆို့သည့် တူညီသောမူဝါဒကို အကောင်အထည်ဖော်ကြသည်။ CORS သည် ဤကန့်သတ်ချက်များကို လျှော့ချရန်နှင့် မတူညီသော အရင်းအမြစ်များအကြား ဒေတာဖလှယ်ရန် ဒီဇိုင်းထုတ်ထားသော ယန္တရားတစ်ခုဖြစ်သည်။ သို့သော်၊ မှားယွင်းသောဖွဲ့စည်းပုံများ သို့မဟုတ် လွဲမှားနေသောဆက်တင်များသည် CORS အမှားများကိုဖြစ်ပေါ်စေနိုင်သည်။.
| ကုဒ်အမှား | ရှင်းလင်းချက် | ဖြစ်နိုင်သောဖြေရှင်းချက် |
|---|---|---|
| တောင်းဆိုထားသောရင်းမြစ်တွင် 'Access-Control-Allow-Origin' ခေါင်းစီးမရှိပါ။. | ဆာဗာတွင် တောင်းဆိုထားသော အရင်းအမြစ်အတွက် 'Access-Control-Allow-Origin' ခေါင်းစီး မပါဝင်ပါ။. | ဆာဗာဘက်ခြမ်းရှိ 'Access-Control-Allow-Origin' ခေါင်းစီးကို ပြင်ဆင်သတ်မှတ်ပါ။. |
| 'Access-Control-Allow-Origin' ခေါင်းစီးတွင် မမှန်ကန်သော တန်ဖိုး 'null' ပါရှိသည်။. | ‘'Access-Control-Allow-Origin' ခေါင်းစီးတွင် 'null' ၏ မမှန်ကန်သော တန်ဖိုးတစ်ခု ပါရှိသည်။. | မှန်ကန်သော ဒိုမိန်းအမည် သို့မဟုတ် '*' (အရင်းအမြစ်အားလုံးအတွက်) ဆာဗာဘက်တွင် သတ်မှတ်ပါ။. |
| မူရင်းအရင်းအမြစ်တောင်းဆိုမှုကို ပိတ်ဆို့ထားသည်- တူညီသော မူရင်းမူဝါဒသည် အဝေးမှရင်းမြစ်ကို ဖတ်ခြင်းအား ခွင့်မပြုပါ။. | တူညီသော မူလမူဝါဒသည် အဝေးမှ ရင်းမြစ်များကို ဖတ်ခြင်းကို တားဆီးသည်။. | CORS ဖွဲ့စည်းမှုပုံစံကို စစ်ဆေးပြီး ဆာဗာဘက်တွင် လိုအပ်သော ခွင့်ပြုချက်များကို ပေးဆောင်ပါ။. |
| CORS အကြိုပျံသန်းမှုချန်နယ် မအောင်မြင်ခဲ့ပါ။. | CORS ကြိုတင်ပျံသန်းမှု တောင်းဆိုချက် မအောင်မြင်ပါ။. | ဆာဗာဘက်ရှိ OPTIONS တောင်းဆိုမှုအတွက် မှန်ကန်သော CORS ခေါင်းစီးများကို ပြင်ဆင်သတ်မှတ်ပါ။. |
CORS အမှားများကို နားလည်ခြင်းနှင့် ဖြေရှင်းခြင်းသည် ဝဘ်အက်ပလီကေးရှင်းများ၏ ချောမွေ့စွာလည်ပတ်မှုအတွက် အရေးကြီးပါသည်။ ဤအမှားများကို ဘရောက်ဆာကွန်ဆိုးလ်ရှိ အသေးစိတ်အမှားစာတိုများဖြင့် ညွှန်ပြလေ့ရှိသည်။ ဤမက်ဆေ့ချ်များသည် အမှား၏ရင်းမြစ်နှင့် ဖြစ်နိုင်ချေရှိသော ဖြေရှင်းချက်များကို နားလည်ရန် အရေးကြီးသောသဲလွန်စများကို ပေးဆောင်သည်။ ဥပမာအားဖြင့်၊ ဆာဗာတွင် 'Access-Control-Allow-Origin' ခေါင်းစီးမပါဝင်ကြောင်း အမှားအယွင်း မက်ဆေ့ချ်က ဖော်ပြပါက၊ ဆာဗာဘက်တွင် ဤခေါင်းစီးအား သင့်လျော်စွာ ပြင်ဆင်သတ်မှတ်ရန် လိုအပ်ပါသည်။ ထို့အပြင်၊ preflight တောင်းဆိုမှုများ မအောင်မြင်ပါက ဆာဗာသည် OPTIONS တောင်းဆိုမှုများကို ကောင်းစွာမကိုင်တွယ်ကြောင်း ညွှန်ပြနိုင်သည်။.
CORS အမှားများနှင့် ဖြေရှင်းချက်များ
CORS အမှားများကို ဖြေရှင်းရာတွင် ပုံမှန်အားဖြင့် server-side configuration များပါဝင်သည်။ သို့သော်လည်း အချို့ကိစ္စများတွင် client-side solutions များလည်း ရရှိနိုင်ပါသည်။ ဥပမာအားဖြင့်၊ CORS ပြဿနာများကို ပရောက်စီတစ်ခုအသုံးပြုခြင်းဖြင့် သို့မဟုတ် JSONP ကဲ့သို့ အစားထိုးဒေတာပြန်လည်ရယူသည့်နည်းလမ်းများကို ကြိုးပမ်းခြင်းဖြင့် ကျော်လွှားနိုင်သည်။ သို့သော်၊ ဤဖြေရှင်းနည်းများသည် အမြဲတမ်းအကောင်းဆုံးရွေးချယ်မှုမဟုတ်ပဲ လုံခြုံရေးအန္တရာယ်များကို ဖြစ်ပေါ်စေနိုင်ကြောင်း မှတ်သားထားရန် အရေးကြီးသည်။ အလုံခြုံဆုံးနှင့် အမြဲတမ်းဖြေရှင်းချက်မှာ ဆာဗာပေါ်တွင် မှန်ကန်သော CORS ခေါင်းစီးများကို ပြင်ဆင်သတ်မှတ်ရန်ဖြစ်သည်။ CORS ကို မှန်ကန်စွာ ပြင်ဆင်သတ်မှတ်ခြင်းသည် လုံခြုံရေး နှစ်ခုလုံးကို သေချာစေပြီး မတူညီသော အရင်းအမြစ်များမှ ဒေတာဖလှယ်မှုကို လုပ်ဆောင်ပေးပါသည်။.
CORS ၏ အရေးကြီးဆုံးအချက်တစ်ခုမှာ၊, လုံခြုံရေး CORS သည် ဝဘ်အက်ပလီကေးရှင်းများ၏ လုံခြုံရေးကို တိုးမြှင့်ရန် ဒီဇိုင်းထုတ်ထားသည့် ယန္တရားတစ်ခုဖြစ်သော်လည်း မှားယွင်းသောဖွဲ့စည်းပုံများသည် လုံခြုံရေးအားနည်းချက်များဆီသို့ ဦးတည်သွားနိုင်သည်။ ဥပမာအားဖြင့်၊ 'Access-Control-Allow-Origin' ခေါင်းစီးအား '*' သို့ သတ်မှတ်ခြင်းသည် ဒိုမိန်းများအားလုံးသည် လုံခြုံရေးအန္တရာယ်ဖြစ်စေနိုင်သည့် အရင်းအမြစ်ကို ဝင်ရောက်ကြည့်ရှုနိုင်သည်ဟု ဆိုလိုသည်။ ထို့ကြောင့် CORS ကို ဂရုတစိုက် စီစဉ်သတ်မှတ်ပြီး ယုံကြည်ရသော အရင်းအမြစ်များကိုသာ ခွင့်ပြုရန် အရေးကြီးပါသည်။ ဝဘ်ဆော့ဖ်ဝဲရေးဆွဲသူများသည် CORS မည်ကဲ့သို့အလုပ်လုပ်ပုံနှင့် ဖြစ်နိုင်ခြေရှိသော လုံခြုံရေးအန္တရာယ်များကို စေ့စေ့စပ်စပ်နားလည်ရန် လိုအပ်သည်။.
မူရင်းအရင်းအမြစ် CORS သည် ဝဘ်အက်ပလီကေးရှင်းများကို လုံခြုံစေရန်အတွက် အရေးကြီးသော ယန္တရားတစ်ခုဖြစ်သည်။ သို့သော်လည်း မှားယွင်းစွာဖွဲ့စည်းထားသော သို့မဟုတ် ပျောက်ဆုံးနေသော လုံခြုံရေးအစီအမံများဖြင့် CORS သည် ဖြစ်နိုင်ချေရှိသော လုံခြုံရေးအားနည်းချက်များဆီသို့ ဦးတည်သွားနိုင်သည်။ ထို့ကြောင့် CORS လုံခြုံရေးကို မြှင့်တင်ရန် အမျိုးမျိုးသော နည်းဗျူဟာများကို အကောင်အထည်ဖော်ရန် အရေးကြီးပါသည်။ ဤနည်းဗျူဟာများသည် ခွင့်ပြုချက်မရှိဘဲ ဝင်ရောက်ခြင်းကို တားဆီးရန်၊ အရေးကြီးသော အချက်အလက်များကို ကာကွယ်ရန်နှင့် ဝဘ်အပလီကေးရှင်းများ၏ အလုံးစုံလုံခြုံရေးကို အားကောင်းစေရန် ဒီဇိုင်းထုတ်ထားပါသည်။.
CORS ၏ လုံခြုံရေးကို မြှင့်တင်ရန် ပထမအဆင့်မှာ၊, မူလခေါင်းစီးကို မှန်ကန်စွာ စီစဉ်သတ်မှတ်ထားသည်။. ဆာဗာဘက်တွင်၊ ယုံကြည်စိတ်ချရပြီး ခွင့်ပြုထားသောရင်းမြစ်များ (မူရင်းများ) ကိုသာ ဝင်ရောက်ခွင့်ပြုသင့်သည်။ အရင်းအမြစ်အားလုံးကို ဝင်ရောက်ကြည့်ရှုခွင့်ပေးခြင်းဖြင့် လုံခြုံရေးအန္တရာယ်များ တိုးမြင့်လာသောကြောင့် သင်္ကေတများ (*) ကို အသုံးပြုခြင်းမှ ရှောင်ကြဉ်ပါ။ ယင်းအစား၊ သီးခြားအရင်းအမြစ်များစာရင်းကို ဖန်တီးသင့်ပြီး ထိုအရင်းအမြစ်များကိုသာ အသုံးပြုခွင့်ပေးသင့်သည်။.
အောက်ဖော်ပြပါဇယားတွင် CORS လုံခြုံရေးကို မြှင့်တင်ရန် အသုံးပြုနိုင်သည့် ခေါင်းစီးအချို့နှင့် ၎င်းတို့၏ ဖော်ပြချက်များအား ဖော်ပြထားပါသည်။ ဤခေါင်းစီးများကို မှန်ကန်စွာ ပြင်ဆင်သတ်မှတ်ခြင်းသည် ခွင့်ပြုချက်မရှိဘဲ ဝင်ရောက်ခြင်းကို တားဆီးရန်နှင့် ဒေတာလုံခြုံရေးကို သေချာစေရန်အတွက် အရေးကြီးပါသည်။.
| ခေါင်းစဉ် | ရှင်းလင်းချက် | နမူနာတန်ဖိုး |
|---|---|---|
| Access-Control-Allow-Origin | အသုံးပြုခွင့်ရှိသော အရင်းအမြစ်များကို သတ်မှတ်ပါ။. | https://example.com |
| Access-Control-Allow-Methods | ခွင့်ပြုထားသော HTTP နည်းလမ်းများကို သတ်မှတ်ပါ။. | ရယူပါ၊ ပို့စ်တင်ပါ၊ ပစ်ပါ၊ ဖျက်ပါ။ |
| Access-Control-Allow-Headers | ခွင့်ပြုထားသော ခေါင်းစီးများကို သတ်မှတ်ပါ။. | အကြောင်းအရာ-အမျိုးအစား၊ ခွင့်ပြုချက် |
| Access-Control-Allow-credentials | ခွဲခြားသတ်မှတ်ခြင်းဆိုင်ရာ အချက်အလက် (ကွတ်ကီးများ၊ ခွင့်ပြုချက် ခေါင်းစီးများ) ပေးပို့ခြင်းအား ညွှန်ပြသည်။. | အမှန် |
CORS ဖွဲ့စည်းမှုများကို ပုံမှန်စစ်ဆေးပါ။ မွမ်းမံသင့်သည်။ အားနည်းချက်များနှင့် ခြိမ်းခြောက်မှုအသစ်များ ထွက်ပေါ်လာသည်နှင့်အမျှ CORS မူဝါဒများကို ပြုပြင်ပြောင်းလဲရန် အရေးကြီးပါသည်။ ထို့အပြင်၊ ဝဘ်အပလီကေးရှင်းမှအသုံးပြုသော ပြင်ပအဖွဲ့အစည်းစာကြည့်တိုက်များနှင့် ဝန်ဆောင်မှုများအားလုံး၏ CORS မူဝါဒများကို ပြန်လည်သုံးသပ်သင့်သည်။ ၎င်းသည် ဖြစ်နိုင်ချေရှိသော လုံခြုံရေးအန္တရာယ်များကို လျှော့ချနိုင်ပြီး ဝဘ်အပလီကေးရှင်း၏ အလုံးစုံလုံခြုံရေးကို သေချာစေသည်။.
မူရင်းအရင်းအမြစ် CORS မူဝါဒများသည် ဝဘ်ဘရောက်ဆာများကို အရင်းအမြစ်တစ်ခုမှ အရင်းအမြစ် (မူလအစ) မှ မတူညီသော အရင်းအမြစ်များသို့ ဝင်ရောက်ခြင်းမှ ကန့်သတ်သည့် လုံခြုံရေးယန္တရားများကို အဓိပ္ပာယ်ဖွင့်ဆိုသည်။ ဤမူဝါဒများသည် အန္တရာယ်ရှိသော ဝဘ်ဆိုက်များကို ထိလွယ်ရှလွယ် ဒေတာများ ဝင်ရောက်ခြင်းမှ တားဆီးခြင်းဖြင့် သုံးစွဲသူလုံခြုံရေးကို တိုးမြှင့်ရန် ရည်ရွယ်ပါသည်။ အခြေခံအားဖြင့်၊ CORS သည် ဝဘ်အပလီကေးရှင်းအား ခွင့်ပြုထားသောရင်းမြစ်များမှသာ ဒေတာများကို ပြန်လည်ရယူရန် ခွင့်ပြုထားသောကြောင့် ခွင့်ပြုချက်မရှိဘဲ ဝင်ရောက်ခွင့်ကို တားဆီးထားသည်။.
CORS မူဝါဒများကို အကောင်အထည်ဖော်ခြင်းအား ဆာဗာဘက်ခြမ်းဖွဲ့စည်းပုံများဖြင့် ဆုံးဖြတ်သည်။ ဆာဗာသည် HTTP ခေါင်းစီးများမှတစ်ဆင့် ဝင်ရောက်ရန် အရင်းအမြစ်များကို သတ်မှတ်ပေးသည်။ တောင်းဆိုထားသော ရင်းမြစ်ကို ခွင့်ပြုထားခြင်း ရှိ၊ မရှိ စစ်ဆေးရန် ဘရောက်ဆာသည် အဆိုပါ ခေါင်းစီးများကို စစ်ဆေးသည်။ အရင်းအမြစ်မဟုတ်ပါက၊ ဘရောက်ဆာသည် တောင်းဆိုချက်အား ပိတ်ဆို့ပြီး JavaScript ကွန်ဆိုးလ်တွင် အမှားအယွင်းစာတိုကို ပြသသည်။ ၎င်းသည် သုံးစွဲသူဘက်မှ ပြုပြင်မွမ်းမံခြင်းမရှိဘဲ ဝဘ်အက်ပ်လီကေးရှင်းများကို လုံခြုံစွာ လည်ပတ်နိုင်စေပါသည်။.
| HTTP ခေါင်းစီး | ရှင်းလင်းချက် | နမူနာတန်ဖိုး |
|---|---|---|
| Access-Control-Allow-Origin | ခွင့်ပြုထားသောရင်းမြစ်များကို သတ်မှတ်ပေးသည်။. | https://example.com |
| Access-Control-Allow-Methods | ခွင့်ပြုထားသော HTTP နည်းလမ်းများကို သတ်မှတ်ပါ။. | GET၊ ပို့စ်၊ PUT |
| Access-Control-Allow-Headers | ခွင့်ပြုထားသော စိတ်ကြိုက်ခေါင်းစီးများကို သတ်မှတ်ပါ။. | X-Custom-Header၊ Content-Type |
| Access-Control-Allow-credentials | အချက်အလက်များကို ခွဲခြားသတ်မှတ်ခြင်း (ကွတ်ကီးများ၊ ခွင့်ပြုချက် ခေါင်းစီးများ) ပေးပို့မည်ကို သတ်မှတ်သည်။. | အမှန် |
CORS မူဝါဒများကို ပြင်ဆင်သတ်မှတ်ခြင်းသည် တစ်ခါတစ်ရံတွင် ရှုပ်ထွေးနိုင်ပြီး မှားယွင်းသောဖွဲ့စည်းပုံများသည် လုံခြုံရေးဆိုင်ရာ အားနည်းချက်များဆီသို့ ဦးတည်သွားနိုင်သည်။ ဥပမာအားဖြင့်, Access-Control-Allow-Original-* CORS ကိုအသုံးပြုခြင်းဆိုသည်မှာ အချို့သောအခြေအနေများတွင် အန္တရာယ်ရှိနိုင်သည့် အရင်းအမြစ်အားလုံးကို အသုံးပြုခွင့်ပေးခြင်းကို ဆိုလိုသည်။ ထို့ကြောင့် CORS မူဝါဒများကို ဂရုတစိုက်ဖွဲ့စည်းရန်နှင့် လိုအပ်သည့်အရင်းအမြစ်များကိုသာ ခွင့်ပြုရန် အရေးကြီးပါသည်။ လုံခြုံရေးကျွမ်းကျင်သူများက CORS ဖွဲ့စည်းမှုပုံစံများကို ပုံမှန်သုံးသပ်ပြီး လုံခြုံရေးစစ်ဆေးမှုများ လုပ်ဆောင်ရန် အကြံပြုထားသည်။.
CORS မူဝါဒများကို အကောင်အထည်ဖော်ခြင်းသည် ဘရောက်ဆာများအကြား အနည်းငယ်ကွဲပြားနိုင်သည်။ သို့သော်လည်း ယေဘုယျအားဖြင့်၊ ခေတ်မီဘရောက်ဆာများအားလုံးသည် CORS စံနှုန်းများကို ပံ့ပိုးပြီး တူညီသော အခြေခံမူများအတိုင်း လုပ်ဆောင်သည်။ ဘရောက်ဆာများသည် တောင်းဆိုထားသော ရင်းမြစ်ကို ခွင့်ပြုထားခြင်းရှိမရှိ စစ်ဆေးရန် ဆာဗာမှရရှိထားသော HTTP ခေါင်းစီးများကို ပိုင်းခြားစိတ်ဖြာပါသည်။ အရင်းအမြစ်မဟုတ်ပါက၊ ဘရောက်ဆာသည် တောင်းဆိုချက်ကို ပိတ်ဆို့ပြီး အသုံးပြုသူထံ အမှားအယွင်း မက်ဆေ့ချ်တစ်ခု ပြသပေးသည်။.
အောက်တွင် CORS မူဝါဒများကို ပြင်ဆင်သတ်မှတ်ခြင်းနှင့် စမ်းသပ်ခြင်းအတွက် အချို့သော အပလီကေးရှင်းနမူနာများ ဖြစ်ပါသည်-
Access-Control-Allow-Origin ၎င်းတို့၏ ခေါင်းစီးများကို သတ်မှတ်ခြင်းဖြင့် မည်သည့်အရင်းအမြစ်များကို ဝင်ရောက်ခွင့်ပြုထားကြောင်း သတ်မှတ်ပါ။.ရွေးချယ်စရာများ ရှုပ်ထွေးသော CORS တောင်းဆိုချက်များကို မှန်ကန်စွာ တုံ့ပြန်ခြင်းဖြင့် ချောမွေ့စွာ အလုပ်လုပ်ကြောင်း သေချာပါစေ။.Access-Control-Allow-credentials ကွတ်ကီးများနှင့် ခွင့်ပြုချက်ခေါင်းစီးများကဲ့သို့သော ပုဂ္ဂိုလ်ရေးအရ ခွဲခြားသိမြင်နိုင်သော အချက်အလက်များ ပေးပို့ခြင်းကို ခွင့်ပြု သို့မဟုတ် ပိတ်ဆို့ပါ။.CORS သည် ဝဘ်လုံခြုံရေး၏ အရေးပါသော အစိတ်အပိုင်းတစ်ခုဖြစ်ပြီး မှန်ကန်စွာ ပြင်ဆင်သတ်မှတ်လိုက်သောအခါ၊ ဝဘ်အက်ပလီကေးရှင်းများ၏ လုံခြုံရေးကို သိသိသာသာ မြှင့်တင်ပေးနိုင်ပါသည်။ သို့သော်၊ မှားယွင်းသောဖွဲ့စည်းပုံများ သို့မဟုတ် ပျက်ကွက်မှုများသည် လုံခြုံရေးဆိုင်ရာ အားနည်းချက်များဆီသို့ ဦးတည်သွားနိုင်သည်။ ထို့ကြောင့်၊ CORS မူဝါဒများကို နားလည်ပြီး မှန်ကန်စွာ အကောင်အထည်ဖော်ခြင်းသည် ဝဘ်ဆော့ဖ်ဝဲရေးဆွဲသူများနှင့် လုံခြုံရေးကျွမ်းကျင်သူများအတွက် အရေးကြီးပါသည်။.
CORS သည် ခေတ်မီဝဘ်အက်ပလီကေးရှင်းများကို လုံခြုံစေရန်အတွက် မရှိမဖြစ်လိုအပ်သောကိရိယာတစ်ခုဖြစ်သည်။ သင့်လျော်စွာ စီစဉ်သတ်မှတ်ထားသော CORS မူဝါဒများသည် ခွင့်ပြုချက်မရှိဘဲ ဝင်ရောက်ခြင်းကို တားဆီးခြင်းဖြင့် သုံးစွဲသူဒေတာကို ကာကွယ်ပေးပါသည်။.
မူရင်းအရင်းအမြစ် CORS သည် ဝဘ်ဆော့ဖ်ဝဲရေးသားသူများကြားတွင် မကြာခဏ နားလည်မှုလွဲသည့်အကြောင်းအရာတစ်ခုဖြစ်သည်။ ဤနားလည်မှုလွဲမှားမှုသည် မလိုလားအပ်သော လုံခြုံရေးဆိုင်ရာ စိုးရိမ်မှုများ သို့မဟုတ် ဖွဲ့စည်းမှုမှားယွင်းခြင်းဆီသို့ ဦးတည်သွားစေနိုင်သည်။ CORS က ဘာတွေလုပ်ဆောင်တယ်၊ မလုပ်ဘူးဆိုတာကို ရှင်းရှင်းလင်းလင်း နားလည်မှုရှိခြင်းက သင့်ဝဘ်အပလီကေးရှင်းတွေရဲ့ လုံခြုံရေးနဲ့ လုပ်ဆောင်နိုင်စွမ်းတွေကို သေချာစေဖို့အတွက် အရေးကြီးတယ်။.
developer အများအပြားက CORS ကို firewall အမျိုးအစားတစ်ခုအဖြစ် ယူဆကြသည်။ သို့သော် ဤသည်မှာ မမှန်ပါ။ CORS သည် ဆာဗာအား အချို့သောအရင်းအမြစ်များသို့ ဝင်ရောက်ခွင့်ပေးသည့် ဒိုမိန်းများကို သတ်မှတ်ခွင့်ပြုသည့် ဘရောက်ဆာများမှ လုပ်ဆောင်သည့် လုံခြုံရေးယန္တရားတစ်ခုဖြစ်သည်။ အန္တရာယ်ရှိသော တိုက်ခိုက်မှုများကို ကာကွယ်မည့်အစား CORS, ဖောက်သည်ဘက် ခွင့်ပြုချက်မရှိဘဲ ရင်းမြစ်များမှ ဝင်ရောက်ခွင့်ကို ကန့်သတ်ထားသည်။.
အောက်ဖော်ပြပါဇယားတွင် သာမန် CORS အခြေအနေများနှင့် ဤအခြေအနေများတွင် ပြုလုပ်ရန် မှန်ကန်သောဖွဲ့စည်းပုံများကို အကြမ်းဖျဉ်းဖော်ပြထားသည်။ ဤဇယားသည် သင့်အား CORS ကို မှန်ကန်စွာ နားလည်ပြီး အကောင်အထည်ဖော်ရန် ကူညီပေးပါမည်။.
| ဇာတ်လမ်း | ရှင်းလင်းချက် | လိုအပ်သော CORS ခေါင်းစီး |
|---|---|---|
| ရိုးရှင်းသောတောင်းဆိုမှု (GET၊ HEAD) | မူရင်းနိုင်ငံဖြတ်ကျော်မှ ရိုးရှင်းသော GET သို့မဟုတ် HEAD တောင်းဆိုချက်။. | Access-Control-Allow-Original-* သို့မဟုတ် သီးခြား domain name တစ်ခု |
| အကြိုပျံသန်းမှုတောင်းဆိုမှု (ရွေးချယ်ခွင့်များ) | PUT သို့မဟုတ် DELETE ကဲ့သို့သော နည်းလမ်းများဖြင့် တောင်းဆိုမှုများနှင့် အထူးခေါင်းစီးများပါရှိသည်။. | Access-Control-Allow-Original-*, Access-Control-Allow-Methods- PUT၊ DELETE, Access-Control-Allow-Headers- အကြောင်းအရာ-အမျိုးအစား |
| အထောက်အထားများဖြင့် တောင်းဆိုပါ။ | ကွက်ကီးများ သို့မဟုတ် ခွင့်ပြုချက် ခေါင်းစီးများပါရှိသော တောင်းဆိုချက်များ။. | Access-Control-Allow-Origin- သီးခြား ဒိုမိန်းအမည်, Access-Control-Allow-Credentials- မှန်ပါသည်။ |
| မည်သည့် Domain Name ကိုမဆို ခွင့်ပြုပါ။ | ဒိုမိန်းအားလုံးမှ တောင်းဆိုမှုများကို ခွင့်ပြုပါ။. | Access-Control-Allow-Original-* (လုံခြုံရေး အားနည်းချက်များကို ဖြစ်စေနိုင်သောကြောင့် သတိဖြင့် အသုံးပြုသင့်သည်) |
CORS ကို မှန်ကန်စွာ နားလည်ခြင်းသည် သင့်ဝဘ်အပလီကေးရှင်းများ၏ လုံခြုံရေးနှင့် လုပ်ဆောင်နိုင်စွမ်းကို မြှင့်တင်ရန် အဓိကသော့ချက်ဖြစ်သည်။ ထို့ကြောင့် CORS နှင့်ပတ်သက်သော အထင်အမြင်လွဲမှားမှုများကို ရှင်းလင်းပြီး ကောင်းမွန်သောအလေ့အကျင့်များချမှတ်ရန် အရေးကြီးပါသည်။ CORS ကိုသတိရပါ။, နောက်ထပ်လုံခြုံရေးအလွှာတစ်ခု ၎င်းသည် သီးခြားလုံခြုံရေးဖြေရှင်းချက်မဟုတ်ပါ။ အခြားလုံခြုံရေးအစီအမံများနှင့် တွဲဖက်အသုံးပြုသင့်သည်။.
မူရင်းအရင်းအမြစ် CORS သည် ခေတ်မီဝဘ်အက်ပလီကေးရှင်းများကို လုံခြုံစေရန်အတွက် အရေးကြီးသော ယန္တရားတစ်ခုဖြစ်သည်။ အခြေခံအားဖြင့်၊ ဝဘ်စာမျက်နှာတစ်ခုသည် မတူညီသောဒိုမိန်းများမှ အရင်းအမြစ်များ (ဥပမာ၊ JavaScript၊ ဖောင့်များ၊ ရုပ်ပုံများ) ကို ဝင်ရောက်သည့်အခါ ထိန်းချုပ်သည်။ ဘရောက်ဆာများသည် မူရင်းမူဝါဒကို မူရင်းအတိုင်း အကောင်အထည်ဖော်ကြပြီး၊ မူရင်းတစ်ခုမှ အခြားသို့ ဝင်ရောက်ခွင့်ကို ကန့်သတ်ထားသည်။ CORS သည် ဤကန့်သတ်ချက်များကို ဘေးကင်းစွာ ဖြေလျှော့ပေးခြင်းဖြင့် developer များကို လိုက်လျောညီထွေဖြစ်စေသည်။.
CORS မည်ကဲ့သို့အလုပ်လုပ်သည်ကိုနားလည်ရန်၊ client ကိုခွင့်ပြုသည့် server မှမူလအစများကိုသတ်မှတ်သည့် HTTP ခေါင်းစီးများကိုစစ်ဆေးရန်အရေးကြီးသည်။ ဥပမာအားဖြင့်, Access-Control-Allow-Origin ခေါင်းစီးသည် မည်သည့်အရင်းအမြစ်ကို ဝင်ရောက်နိုင်သည်ကို သတ်မှတ်သည်။ အကယ်၍ သုံးစွဲသူ၏ မူလအစကို ဤခေါင်းစီးတွင် သတ်မှတ်ထားသည် သို့မဟုတ် သင်္ကေတ (*) ကို အသုံးပြုပါက၊ အသုံးပြုခွင့်ကို ခွင့်ပြုထားသည်။ သို့သော်၊ သတိထားရမည့်အချက်များပါရှိသည့် wildcard ကိုအသုံးပြုခြင်းသည် လုံခြုံရေးအန္တရာယ်များကို ဖြစ်စေနိုင်သည်။.
| ခေါင်းစဉ်အမည် | ရှင်းလင်းချက် | နမူနာတန်ဖိုး |
|---|---|---|
| Access-Control-Allow-Origin | အရင်းအမြစ်ကို ဝင်ရောက်ကြည့်ရှုနိုင်သော ဇစ်မြစ်ကို ညွှန်ပြသည်။. | https://example.com၊ * |
| Access-Control-Allow-Methods | ခွင့်ပြုထားသော HTTP နည်းလမ်းများကို သတ်မှတ်ပါ။. | GET၊ ပို့စ်၊ PUT |
| Access-Control-Allow-Headers | ခွင့်ပြုထားသော ခေါင်းစီးများကို သတ်မှတ်ပါ။. | အကြောင်းအရာ-အမျိုးအစား၊ ခွင့်ပြုချက် |
| Access-Control-Expose-Headers | ကလိုင်းယင့်အား ပြသမည့် ခေါင်းစီးများကို သတ်မှတ်သည်။. | X-Custom-Header |
CORS အမှားများသည် ဖွံ့ဖြိုးတိုးတက်မှုအတွင်း ကြုံတွေ့ရလေ့ရှိသော ပြဿနာများဖြစ်သည်။ ဤအမှားအယွင်းများ၏ အရင်းခံအကြောင်းရင်းမှာ မှန်ကန်သော CORS ခေါင်းစီးများကို ဆာဗာမှ မပို့ခြင်းကြောင့်ဖြစ်သည်။ အမှားအယွင်းစာတိုများသည် အများအားဖြင့် ဘရောက်ဆာကွန်ဆိုးလ်တွင် ပေါ်လာပြီး ပြဿနာ၏ရင်းမြစ်ကို ရှာဖွေဖော်ထုတ်ရာတွင် ကူညီပေးသည်။ ဤအမှားများကို ဖြေရှင်းရန်၊ ဆာဗာဘက်ခြမ်းကို မှန်ကန်စွာ ပြင်ဆင်သတ်မှတ်ရန်နှင့် လိုအပ်သော ခေါင်းစီးများကို ထည့်သွင်းရန် လိုအပ်သည်။.
Access-Control-Allow-Origin ခေါင်းစဉ်သတ်မှတ်ပါ။.Access-Control-Allow-Methods) ရှင်းရှင်းလင်းလင်းဖော်ပြပါ။.Access-Control-Allow-Headers) မှန်မှန်ကန်ကန် ပြင်ဆင်ပါ။.CORS သည် လုံခြုံရေး ယန္တရားတစ်ခုမျှသာမဟုတ်ကြောင်း မှတ်သားထားရန် အရေးကြီးပါသည်။ ၎င်းသည် ဝဘ်အက်ပလီကေးရှင်းများ၏ လုပ်ဆောင်နိုင်စွမ်းကို မြှင့်တင်ပေးသည့် ကိရိယာတစ်ခုလည်းဖြစ်သည်။ မှန်ကန်စွာ စီစဉ်သတ်မှတ်ထားသောအခါ၊ မတူညီသောရင်းမြစ်များမှ ဒေတာများကို ဆွဲထုတ်ပြီး မျှဝေနိုင်မှုသည် ပိုမိုကြွယ်ဝပြီး အပြန်အလှန်အကျိုးပြုသော ဝဘ်အတွေ့အကြုံများကို ဖန်တီးပေးနိုင်ပါသည်။ သို့သော်လည်း ဖြစ်နိုင်ချေရှိသော အန္တရာယ်များကို လျှော့ချရန်အတွက် လုံခြုံရေးအစီအမံများကို အမြဲတမ်းဦးစားပေးလုပ်ဆောင်ရန် အရေးကြီးပါသည်။.
CORS သည် ဝဘ်အက်ပလီကေးရှင်းများ၏ လုံခြုံရေးအတွက် အဘယ်ကြောင့် အလွန်အရေးကြီးသနည်း။
CORS သည် အမျိုးမျိုးသော အရင်းအမြစ်များ (ဒိုမိန်း၊ ပရိုတိုကော၊ ဆိပ်ကမ်း) မှ ဒေတာများကို ဘရောက်ဆာအခြေခံ ဝဘ်အပလီကေးရှင်းများမှ မည်ကဲ့သို့ ရယူသည်ကို ထိန်းချုပ်ခြင်းဖြင့် အန္တရာယ်ရှိသော ဝဘ်ဆိုက်များကို ဝင်ရောက်ကြည့်ရှုခြင်းမှ တားဆီးသည်။ ၎င်းသည် အသုံးပြုသူ၏ကိုယ်ရေးကိုယ်တာနှင့် အပလီကေးရှင်း၏ဂုဏ်သိက္ခာကို ကာကွယ်ပေးသည်။ အခြေခံအားဖြင့်၊ ၎င်းသည် firewall တစ်ခုအနေဖြင့်လုပ်ဆောင်သည်။.
CORS ၏ ဖွံ့ဖြိုးတိုးတက်ရေးလုပ်ငန်းစဉ်သည် မည်သို့ရှိသနည်း၊ ၎င်းသည် အဘယ်အရာမှ ဖြစ်ပေါ်လာသနည်း။
ဝဘ်အက်ပ်လီကေးရှင်း APIs များ ပိုမိုဝင်ရောက်လာသောကြောင့် CORS သည် ပေါ်ပေါက်လာခဲ့သည်။ တူညီသော မူလမူဝါဒသည် အချို့ကိစ္စများတွင် တင်းကျပ်လွန်းနေပြီး developer များသည် domain များတစ်လျှောက် ဒေတာကို လုံခြုံစွာ ဖလှယ်နိုင်စေမည့် ယန္တရားတစ်ခု လိုအပ်ပါသည်။ ၎င်းကို W3C မှ စံသတ်မှတ်ထားပြီး နောက်ဆုံးတွင် ဝဘ်ဘရောက်ဆာများက လက်ခံကျင့်သုံးခဲ့သည်။.
CORS ကိုသုံးမည့်အစား အခြားအခြားရွေးချယ်စရာနည်းလမ်းများကို ပိုမိုနှစ်သက်နိုင်ပြီး CORS ၏ အားသာချက်များကား အဘယ်နည်း။
JSONP (JSON with Padding) ကဲ့သို့သော နည်းလမ်းများကို CORS ၏ အစားထိုးအဖြစ် အသုံးပြုနိုင်ပါသည်။ သို့သော်၊ JSONP သည် GET တောင်းဆိုမှုများကိုသာ ပံ့ပိုးပေးပြီး လုံခြုံမှုနည်းပါးသည်။ CORS သည် GET နှင့် အခြားသော HTTP နည်းလမ်းများ (POST၊ PUT၊ DELETE စသည်ဖြင့်) ကို ပံ့ပိုးပေးပြီး ပိုမိုလုံခြုံသော ယန္တရားကို ပေးဆောင်ပါသည်။ CORS သည် ဆာဗာဘက်ခြမ်းတွင် ပိုမို ကောင်းမွန်သော ချိန်ညှိမှုများကိုလည်း ခွင့်ပြုပါသည်။.
CORS ဖွဲ့စည်းမှုပုံစံကို ပိုမိုနားလည်နိုင်စေရန်အတွက် အခြေခံအကျဆုံးအဆင့်များနှင့် အရာများကား အဘယ်နည်း။
CORS ဖွဲ့စည်းမှုပုံစံရှိ အခြေခံအဆင့်များတွင် ဆာဗာဘက်ခြမ်းရှိ 'Access-Control-Allow-Origin' ခေါင်းစီးကို သတ်မှတ်ခြင်း ပါဝင်သည်။ ဤခေါင်းစီးသည် မည်သည့်ဒိုမိန်းများသည် ရင်းမြစ်ကို ဝင်ရောက်ခွင့် ပြုသည်ကို သတ်မှတ်သည်။ သတိပြုရန် အရေးကြီးဆုံးအချက်မှာ '*' အက္ခရာအသုံးပြုမှုကို ထိန်းချုပ်ထားသည်။ မလိုအပ်ပါက၊ သီးခြားဒိုမိန်းများကို သတ်မှတ်ပေးရပါမည်။.
preflight တောင်းဆိုချက် (OPTIONS တောင်းဆိုချက်) အတိအကျကဘာလဲ၊ CORS ယန္တရားတွင်၎င်း၏အခန်းကဏ္ဍကဘာလဲ။
preflight တောင်းဆိုချက်သည် အမှန်တကယ် တောင်းဆိုချက်ကို ဆာဗာသို့ မပို့မီ ဘရောက်ဆာမှ လုပ်ဆောင်သော ပဏာမစစ်ဆေးမှုတစ်ခုဖြစ်သည်။ ၎င်းကို OPTIONS နည်းလမ်းမှတစ်ဆင့် ပေးပို့ပြီး အမှန်တကယ် တောင်းဆိုချက် (ဥပမာ၊ POST) ကို ခွင့်ပြုခြင်းရှိမရှိ ဆာဗာအား မေးမြန်းသည်။ အထူးသဖြင့် ရိုးရှင်းသောတောင်းဆိုမှုများမဟုတ်သည့် တောင်းဆိုမှုများအတွက် ၎င်းကို လုံခြုံရေးအတိုင်းအတာတစ်ခုအဖြစ် အသုံးပြုသည်။ ဆာဗာသည် သင့်လျော်သော CORS ခေါင်းစီးများဖြင့် တုံ့ပြန်ပါက၊ အမှန်တကယ် တောင်းဆိုချက်ကို ပေးပို့မည်ဖြစ်သည်။.
CORS အမှားအယွင်းများ ၏ အဖြစ်အများဆုံး အကြောင်းရင်းများ က ဘာတွေလဲ ၊ အဲဒါတွေကို ဖြေရှင်းဖို့ လက်တွေ့ကျတဲ့ ဖြေရှင်းနည်းတွေက ဘာတွေလဲ။
CORS အမှားများ ၏ အဖြစ်များသော အကြောင်းရင်းများတွင် မှားယွင်းနေသော သို့မဟုတ် ပျောက်ဆုံးနေသော ဆာဗာဘက်ခြမ်း CORS ခေါင်းစီးများ၊ ဒိုမိန်း မကိုက်ညီမှုများ နှင့် မအောင်မြင်သော ကြိုတင်ပျံသန်းမှု တောင်းဆိုချက်များ ပါဝင်သည်။ ဖြေရှင်းချက်များတွင် ဆာဗာဘက်ခြမ်း CORS ခေါင်းစီးများကို စစ်ဆေးခြင်း၊ ခွင့်ပြုထားသော ဒိုမိန်းများကို မှန်ကန်စွာ သတ်မှတ်ခြင်းနှင့် ကြိုတင်ပျံသန်းမှု တောင်းဆိုချက် အောင်မြင်စွာ ပြီးမြောက်ကြောင်း သေချာစေခြင်းတို့ ပါဝင်သည်။.
CORS ၏လုံခြုံရေးကို မြှင့်တင်ရန် အဘယ်အဆင့်မြင့်နည်းပညာများနှင့် မဟာဗျူဟာများကို အကောင်အထည်ဖော်နိုင်သနည်း။
CORS ၏ လုံခြုံရေးကို တိုးမြှင့်ရန်၊ 'Access-Control-Allow-Credentials' ခေါင်းစီးကို ဂရုတစိုက်အသုံးပြုခြင်း၊ 'Access-Control-Expose-Headers' ခေါင်းစီး၊ 'မူလအစ' ခေါင်းစီး၏ ဆာဗာဘက်ခြမ်း အတည်ပြုခြင်းနှင့် Subresource Integrity) (Subresource Integrity)).
CORS အကြောင်း developer များကြားတွင် အဖြစ်များဆုံး နားလည်မှုလွဲမှားမှုများမှာ အဘယ်နည်း၊ ၎င်းတို့ကို ရှင်းလင်းရန် အဘယ်အရာပြောနိုင်သနည်း။
CORS နှင့် ပတ်သက်သော ဘုံအထင်အမြင်လွဲမှားမှုတစ်ခုမှာ '*' ၏တန်ဖိုးသည် 'လူတိုင်းကို ခွင့်ပြုသည်' ဖြစ်ပြီး အမြဲလုံခြုံသည်ဟု ဆိုလိုသည်။ ဤသည်မှာ မမှန်ပါ။ အထောက်အထားများ လိုအပ်ပြီး ဖြစ်နိုင်ချေရှိသော လုံခြုံရေးအန္တရာယ်များကို သယ်ဆောင်ပေးသည့် တောင်းဆိုချက်များအတွက် '*' ကို အသုံးမပြုနိုင်ပါ။ သတ်မှတ်ထားသော ဒိုမိန်းများကို သတ်မှတ်ရန်နှင့် 'Access-Control-Allow-Credentials' ခေါင်းစီး၏ အဓိပ္ပါယ်ကို အပြည့်အဝနားလည်ရန် developer များအတွက် အရေးကြီးပါသည်။.
နောက်ထပ် အချက်အလက်- MDN ဝဘ်စာရွက်စာတမ်း- မူရင်းအရင်းအမြစ် မျှဝေခြင်း (CORS)
ပြန်စာထားခဲ့ပါ။