လက်ရှိတည်နေရာ: ပင်မစာမျက်နှာ> နောက်ဆုံးရဆောင်းပါးများစာရင်း> ရှေ့တန်းခွဲထွက်ရေးစီမံကိန်းများတွင် API တုံ့ပြန်မှုခေါင်းဆောင်မှုများ၏မှန်ကန်သောချိန်ညှိချက်များကိုအကောင်အထည်ဖော်ပါ

ရှေ့တန်းခွဲထွက်ရေးစီမံကိန်းများတွင် API တုံ့ပြန်မှုခေါင်းဆောင်မှုများ၏မှန်ကန်သောချိန်ညှိချက်များကိုအကောင်အထည်ဖော်ပါ

M66 2025-05-28

ရှေ့တန်းမှအဆုံး, ရှေ့တန်းမှအဆုံးတွင်သီးခြားစီအပြီးတွင်သီးခြားစီအပြီးတွင် (များသောအားဖြင့် php, node.js, Python စသည်တို့) ကို အခြေခံ. အများအားဖြင့် php, node.js, Python စသည်တို့) ကို အခြေခံ. တစ်မျိုးတည်းဖြင့်ခွဲခြားထားသည်။ API ၏တုံ့ပြန်မှုများကိုရှေ့တန်းမှမှန်ကန်စွာကိုင်တွယ်နိုင်ရန်အတွက်ဒိုမိန်းမရှိတဲ့ဒိုမိန်းပြ issues နာများကိုရှောင်ရှားရန်, လုံခြုံရေးနှင့်စံသတ်မှတ်ချက်ကိုသေချာစေရန်,

PHP တွင်အသုံးအများဆုံး tool မှာ header () function ကိုဖြစ်ပါတယ်။ ဤဆောင်းပါးသည်ရှေ့တန်းခွဲထွက်ရေးစီမံကိန်းများအတွက်ဘုံ API တုန့်ပြန်မှုခေါင်းစီးများကိုသတ်မှတ်ရန် ခေါင်းစဉ် () function ကိုမည်သို့အသုံးပြုရမည်ကိုရှင်းပြရန်တိကျသောဥပမာများကိုအသုံးပြုလိမ့်မည်။

1 ။ အကြောင်းအရာ-type တုံ့ပြန်မှု header ကိုသတ်မှတ်ပါ

API မှပြန်လာသောအချက်အလက်များသည်ယေဘုယျအားဖြင့် JSON format တွင်ယေဘုယျအားဖြင့် JSON format တွင်ဖြစ်သည်။

 header('Content-Type: application/json; charset=utf-8');

ဤကုဒ်နံပါတ်သည် Returned data type သည် JSOSS နှင့်ဇာတ်ကောင်အစုံမှာ UTF-8 ဖြစ်သည်။ ရှေ့ဆုံးသည်ဤအချက်အလက်အပေါ် အခြေခံ. တုန့်ပြန်မှုကိုမှန်ကန်စွာခွဲခြမ်းစိတ်ဖြာနိုင်သည်။

2 ။ Cross-Domain (Cors) Response header ကိုသတ်မှတ်ပါ

လက်ရှိနှင့် backend သည်တူညီသောဒိုမိန်းတွင်မရှိကြပါတကား, browser သည်တောင်းဆိုမှုကိုကြားဖြတ်လိမ့်မည်။ ရှေ့တန်းလျှောက်လွှာကိုခွင့်ပြုရန်ကျွန်ုပ်တို့သည် Cross-Domain Response Headers များကိုထည့်သွင်းရန်လိုအပ်သည်။

 header('Access-Control-Allow-Origin: https://m66.net');
header('Access-Control-Allow-Methods: GET, POST, PUT, DELETE, OPTIONS');
header('Access-Control-Allow-Headers: Content-Type, Authorization');

ဤချိန်ညှိချက်များသည် API ကို api သို့ https://m66.net မှလက်လှမ်းမီမှုကိုခွင့်ပြုပြီးသတ်မှတ်ထားသောတောင်းဆိုမှုနည်းလမ်းများနှင့်စိတ်ကြိုက်တောင်းဆိုခြင်းခေါင်းစဉ်များကိုခွင့်ပြုသည်။ မှတ်ချက် - ထုတ်လုပ်မှုပတ် 0 န်းကျင်တွင်အသုံးပြုရန်မဟုတ်ဘဲလုံခြုံရေးတိုးတက်စေရန်တိကျသောဒိုမိန်းအမည်များကိုသတ်မှတ်ရန်အကောင်းဆုံးဖြစ်သည်။

3 ။ Cache ကိုကာကွယ်ရန်တုံ့ပြန်မှုခေါင်းစီးများသတ်မှတ်ပါ

ရှေ့ဆုံးသည်နောက်ဆုံးပေါ်အချက်အလက်များကိုအချိန်တိုင်းရရှိစေရန်သေချာစေရန်,

 header('Cache-Control: no-store, no-cache, must-revalidate');
header('Pragma: no-cache');
header('Expires: 0');

ဤတုန့်ပြန်မှုခေါင်းစဉ်များက 0 န်ဆောင်မှုခံယူသူနှင့် proxy server ကိုပြန်လာသောအကြောင်းအရာများကိုမသိမ်းဆည်းရန်ဖြစ်သည်။

4 ။ HTTP အခြေအနေကုဒ်ကိုပြန်ပို့ပါ

တခါတရံတွင်သင်သည်အချက်အလက်များကိုပြန်ပို့ရန်လိုသည်သာမကသက်ဆိုင်ရာ HTTP အဆင့်အတန်းကုဒ်ကိုလည်းသတ်မှတ်ရန်လည်းလိုအပ်သည်။

ဥပမာအားဖြင့် 201 သို့ပြန်သွားပြီးအောင်မြင်စွာဖန်တီးပါ။

 http_response_code(201);

သို့မဟုတ် header ကိုသတ်မှတ်ရန်:

 header('HTTP/1.1 201 Created');

ဥပမာ 4001, 403, 404, 500, ဘုံအမှားတုံ့ပြန်မှုများအတွက်သင်စီးပွားရေးလုပ်ငန်းလိုအပ်ချက်များနှင့်အညီပြောင်းလွယ်ပြင်လွယ်ထားနိုင်သည်။

5 ။ ပြီးပြည့်စုံသောဥပမာ

ဤတွင် API တုံ့ပြန်မှုနမူနာကုဒ်ပြီးပြည့်စုံသည်။

 <?php
// တည်ဆောက်သည် JSON တုံ့ပြန်မှု header
header('Content-Type: application/json; charset=utf-8');

// တည်ဆောက်သည်跨域
header('Access-Control-Allow-Origin: https://m66.net');
header('Access-Control-Allow-Methods: GET, POST, PUT, DELETE, OPTIONS');
header('Access-Control-Allow-Headers: Content-Type, Authorization');

// cache ကိုပိတ်ပါ
header('Cache-Control: no-store, no-cache, must-revalidate');
header('Pragma: no-cache');
header('Expires: 0');

// ပြန်လာ 200 အခြေအနေကုဒ်
http_response_code(200);

// ပြန်လာ JSON အချက်များ
$response = [
    'status' => 'success',
    'message' => 'API တုံ့ပြန်မှုကိုအောင်မြင်စွာ',
    'data' => ['id' => 1, 'name' => '测试အချက်များ']
];

echo json_encode($response);
?>