ရှေ့တန်းမှအဆုံး, ရှေ့တန်းမှအဆုံးတွင်သီးခြားစီအပြီးတွင်သီးခြားစီအပြီးတွင် (များသောအားဖြင့် php, node.js, Python စသည်တို့) ကို အခြေခံ. အများအားဖြင့် php, node.js, Python စသည်တို့) ကို အခြေခံ. တစ်မျိုးတည်းဖြင့်ခွဲခြားထားသည်။ API ၏တုံ့ပြန်မှုများကိုရှေ့တန်းမှမှန်ကန်စွာကိုင်တွယ်နိုင်ရန်အတွက်ဒိုမိန်းမရှိတဲ့ဒိုမိန်းပြ issues နာများကိုရှောင်ရှားရန်, လုံခြုံရေးနှင့်စံသတ်မှတ်ချက်ကိုသေချာစေရန်,
PHP တွင်အသုံးအများဆုံး tool မှာ header () function ကိုဖြစ်ပါတယ်။ ဤဆောင်းပါးသည်ရှေ့တန်းခွဲထွက်ရေးစီမံကိန်းများအတွက်ဘုံ API တုန့်ပြန်မှုခေါင်းစီးများကိုသတ်မှတ်ရန် ခေါင်းစဉ် () function ကိုမည်သို့အသုံးပြုရမည်ကိုရှင်းပြရန်တိကျသောဥပမာများကိုအသုံးပြုလိမ့်မည်။
API မှပြန်လာသောအချက်အလက်များသည်ယေဘုယျအားဖြင့် JSON format တွင်ယေဘုယျအားဖြင့် JSON format တွင်ဖြစ်သည်။
header('Content-Type: application/json; charset=utf-8');
ဤကုဒ်နံပါတ်သည် Returned data type သည် JSOSS နှင့်ဇာတ်ကောင်အစုံမှာ UTF-8 ဖြစ်သည်။ ရှေ့ဆုံးသည်ဤအချက်အလက်အပေါ် အခြေခံ. တုန့်ပြန်မှုကိုမှန်ကန်စွာခွဲခြမ်းစိတ်ဖြာနိုင်သည်။
လက်ရှိနှင့် 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 န်းကျင်တွင်အသုံးပြုရန်မဟုတ်ဘဲလုံခြုံရေးတိုးတက်စေရန်တိကျသောဒိုမိန်းအမည်များကိုသတ်မှတ်ရန်အကောင်းဆုံးဖြစ်သည်။
ရှေ့ဆုံးသည်နောက်ဆုံးပေါ်အချက်အလက်များကိုအချိန်တိုင်းရရှိစေရန်သေချာစေရန်,
header('Cache-Control: no-store, no-cache, must-revalidate');
header('Pragma: no-cache');
header('Expires: 0');
ဤတုန့်ပြန်မှုခေါင်းစဉ်များက 0 န်ဆောင်မှုခံယူသူနှင့် proxy server ကိုပြန်လာသောအကြောင်းအရာများကိုမသိမ်းဆည်းရန်ဖြစ်သည်။
တခါတရံတွင်သင်သည်အချက်အလက်များကိုပြန်ပို့ရန်လိုသည်သာမကသက်ဆိုင်ရာ HTTP အဆင့်အတန်းကုဒ်ကိုလည်းသတ်မှတ်ရန်လည်းလိုအပ်သည်။
ဥပမာအားဖြင့် 201 သို့ပြန်သွားပြီးအောင်မြင်စွာဖန်တီးပါ။
http_response_code(201);
သို့မဟုတ် header ကိုသတ်မှတ်ရန်:
header('HTTP/1.1 201 Created');
ဥပမာ 4001, 403, 404, 500, ဘုံအမှားတုံ့ပြန်မှုများအတွက်သင်စီးပွားရေးလုပ်ငန်းလိုအပ်ချက်များနှင့်အညီပြောင်းလွယ်ပြင်လွယ်ထားနိုင်သည်။
ဤတွင် 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);
?>