လက်ရှိတည်နေရာ: ပင်မစာမျက်နှာ> နောက်ဆုံးရဆောင်းပါးများစာရင်း> JSON တုံ့ပြန်မှုခေါင်းစီး၏မှန်ကန်သောကိုယ်ဟန်အနေအထားကိုသတ်မှတ်ရန် header ကိုသုံးပါ

JSON တုံ့ပြန်မှုခေါင်းစီး၏မှန်ကန်သောကိုယ်ဟန်အနေအထားကိုသတ်မှတ်ရန် header ကိုသုံးပါ

M66 2025-05-28

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

header () function ကဘာလဲ?

PHP's header () function ကို အသုံးပြု. HTTP တုန့်ပြန်မှုခေါင်းစဉ်သတင်းအချက်အလက်များကို client သို့ပို့ရန်အသုံးပြုသည်။ မှန်ကန်သောတုံ့ပြန်မှုခေါင်းစဉ်ကိုသတ်မှတ်ခြင်းအားဖြင့်ဆာဗာသည် browser သို့မဟုတ် client ကိုသူတို့တုန့်ပြန်မှုအကြောင်းအရာများကိုမှန်ကန်စွာကိုင်တွယ်ရန်တောင်းဆိုထားသောအရင်းအမြစ်အမျိုးအစားကိုတောင်းဆိုထားသည်။ အထူးသဖြင့် JSON ဒေတာကိုပြန်ပို့သောအခါ အကြောင်းအရာအမျိုးအစားကို application / JSONSO သို့သတ်မှတ်ရန်အလွန်အရေးကြီးသည်။

application / JSONS သို့အကြောင်းအရာအမျိုးအစားကိုအဘယ်ကြောင့်သတ်မှတ်ထားသနည်း။

ပုံမှန်အားဖြင့် PHP သည်တုန့်ပြန် အကြောင်းအရာအမျိုးအစားကို မသတ်မှတ်ပါ။ JSON ဒေတာကိုပြန်ပို့မယ်ဆိုရင် browser (သို့) client ကအဲဒါကိုမှန်ကန်စွာခွဲခြမ်းစိတ်ဖြာနိုင်မှာမဟုတ်ဘူး။ ထို့ကြောင့်ကျွန်ုပ်တို့သည် 0 န်ဆောင်မှုခံယူသူအား JSON ဒေတာများကိုပြန်ပို့နေကြောင်းအတိအလင်းပြောရန်လိုအပ်သည်။ application / JSONS သို့ အကြောင်းအရာအမျိုးအစားကို သတ်မှတ်ခြင်းဖြင့် 0 န်ဆောင်မှုခံယူသူသည်တုန့်ပြန်မှုကိုမှန်ကန်စွာကိုင်တွယ်နိုင်ပြီး၎င်းကို JSON format အနေဖြင့်ကုသနိုင်သည်။

JSON တုံ့ပြန်မှုခေါင်းစီးကို header () function ကို အသုံးပြု. ဘယ်လိုသတ်မှတ်ရမလဲ။

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

  1. မှန်ကန်သောအကြောင်းအရာ - အမျိုးအစားတုန့်ပြန်ခေါင်းစီးကိုပေးပို့ပါ

  2. အခြားရလဒ်များမရှိကြောင်းသေချာပါစေ

  3. output json ဒေတာ

အောက်ဖော်ပြပါအချက်များသည် JSO Reface header header ကို PHP တွင်မည်သို့မှန်ကန်စွာသတ်မှတ်ရန်နှင့် JSON အချက်အလက်များကိုပြန်ပို့ရမည်ကိုပြသသည့်ရိုးရှင်းသောဥပမာတစ်ခုဖြစ်သည်။

 <?php
// တည်ဆောက်သည် Content-Type အတွက် application/json
header('Content-Type: application/json');

// အချို့ဒေတာကို Simulate
$data = array(
    'status' => 'success',
    'message' => 'ဒေတာကိုအောင်မြင်စွာလုပ်ဆောင်ခဲ့သည်',
    'url' => 'https://m66.net/success'
);

// 将数据转换အတွက် JSON ပမာဏ
echo json_encode($data);
?>

code parsing

  1. header ('Content-type: application / JSONS);
    ဤကုဒ်နံပါတ်သည်အရေးအကြီးဆုံးဖြစ်သည်, တုန့်ပြန်မှု၏ပါဝင်မှုအမျိုးအစားသည် JSOSH ဖြစ်သည်ဟုဆိုသော browser သို့မဟုတ် client ကိုဖော်ပြထားသည်။ ၎င်းသည်ဖောက်သည်အားပြန်ပို့သောအချက်အလက်များကိုမှန်ကန်စွာခွဲခြမ်းစိတ်ဖြာရန်ခွင့်ပြုသည်။

  2. $ ဒေတာ = array (... )
    ဤနေရာတွင်ကျွန်ုပ်တို့ပြန်လာလိုသောအချက်အလက်များအနေဖြင့်ရိုးရိုးခင်းကျင်းမှုတစ်ခုတည်ဆောက်သည်။ အမှန်တကယ်ဖွံ့ဖြိုးတိုးတက်မှုတွင်ဒေတာတစ်ခုမှဒေတာများကိုရှာဖွေခြင်းသို့မဟုတ်ပြင်ပ API မှအချက်အလက်များကိုရှာဖွေခြင်းသို့မဟုတ် JSON အဖြစ် format လုပ်ပါ။

  3. JSORS_CENDODED ($ ဒေတာ);
    ဤလုပ်ဆောင်ချက်သည် PHP Array သို့မဟုတ်အရာဝတ်ထုများကို JSON format ဖြင့်ပြောင်းလဲနိုင်သည်။ json_encode () သည် ကိုးကားချက်များသို့မဟုတ် backslash ကဲ့သို့သောအထူးအက္ခရာများကိုအလိုအလျောက်ပြုလုပ်နိုင်သည်ကိုသတိပြုပါ။

မှတ်သားရန်အရာ

  • Header ကိုမပို့ခင်ဘာမှမဆိုပါနှင့် header () function ကိုမခေါ်မီ PHP သည် (ဥပမာ, နေရာများ, HTML tags များသို့မဟုတ်အမှားအယွင်းများ) မရှိပါ။ Header ကို ခေါ်ဆိုခြင်းမပြုမီ output တစ်ခုရှိပါက PHP သည်အမှားတစ်ခုသို့တင်ပြလိမ့်မည်။ header အချက်အလက်များကိုပြုပြင်မွမ်းမံခြင်း - ခေါင်းစီးများပေးပို့ပြီးဖြစ်သည်

  • တုန့်ပြန်မှုခေါင်းစီးများသည်မှန်ကန်သောအမှာစာတွင်သေချာအောင်လုပ်ပါ အဆိုပါတုန့်ပြန်ခေါင်းစီးကိုအခြား output မတိုင်မီပေးပို့သင့်ပါတယ်။ JSON တုံ့ပြန်မှုခေါင်းစဉ်ကိုပို့ပြီးနောက် HTML output သို့မဟုတ်အခြားပါဝင်မှု output ကိုလုပ်ဆောင်ပါက Browser သည် JSON ဒေတာကိုမှန်ကန်စွာခွဲခြမ်းစိတ်ဖြာနိုင်တော့မည်မဟုတ်ပါ။

  • JSON အချက်အလက်များ၏ဇာတ်ကောင် encoding ပြ problem နာ If you need to return JSON data containing non-ASCII characters, make sure to use the JSON_UNESCAPED_UNICODE flag in json_encode() , so that Chinese characters can be avoided being escaped into Unicode encoding.

 echo json_encode($data, JSON_UNESCAPED_UNICODE);

ကောင်းသောအသေးစိတ်ဥပမာ

ဤတွင်အကောင်းဆုံးသောအလေ့အကျင့်များအားလုံးကိုပြည့်စုံသောဥပမာတစ်ခုဖြစ်သည်။

 <?php
// မည်သည့် output ကိုတားဆီး
ob_start();

// တည်ဆောက်သည်响应头အတွက် JSON ပမာဏ
header('Content-Type: application/json');

// တည်ဆောက်သည်其他头部信息(Cross-Domain တောင်းဆိုမှုများကိုခွင့်ပြုပါက)
header('Access-Control-Allow-Origin: *');
header('Access-Control-Allow-Methods: GET, POST');

// ဒေတာဘေ့စ်သို့မဟုတ်အခြားနေရာများမှရရှိသောဒေတာကိုတုပ
$data = array(
    'status' => 'error',
    'message' => 'အမှားတစ်ခုဖြစ်ပွားခဲ့သည်,ကျေးဇူးပြု. နောက်မှထပ်ကြိုးစားပါ',
    'url' => 'https://m66.net/error'
);

// 将数据转换အတွက် JSON ပမာဏ并输出
echo json_encode($data, JSON_UNESCAPED_UNICODE);

// ဇာတ်ညွှန်းကိုအဆုံးသတ်ပါ,အခြားရလဒ်များမရှိကြောင်းသေချာပါစေ
ob_end_flush();
?>

အကျဉ်းချုပ်

PHP တွင် JSON တုံ့ပြန်မှုခေါင်းစီးများကို header () function ကို သုံး. set up လုပ်ရန်အလွန်လွယ်ကူသည်။ Content-type: application / JSONS , client ကိုမှန်မှန်ကန်ကန်ဖြစ်စဉ်များကိုမှန်ကန်စွာလုပ်ဆောင်နိုင်အောင်သေချာအောင်ပြုလုပ်နိုင်သည်။ တုန့်ပြန်မှုခေါင်းစဉ်ကိုမသတ်မှတ်ခင်, အမှားအယွင်းများကိုရှောင်ရှားနိုင်အောင်အခြား output မရှိဘူးဆိုတာသတိရပါ။

PHP ကို ​​အသုံးပြု. JSON တုံ့ပြန်မှုများကိုမည်သို့ကိုင်တွယ်ရမည်ကိုပိုမိုနားလည်သဘောပေါက်ရန်ဤဆောင်းပါးကသင့်အားပိုမိုနားလည်ရန်မျှော်လင့်ပါသည်။ သင့်တွင်မေးခွန်းများရှိပါကအခမဲ့မေးမြန်းပါ။