ပရောက်စီမှတစ်ဆင့် အပ်လုဒ်တင်သောအခါ ဘိုင်နရီဖိုင်၏ ဘိုက်များကို ထိန်းသိမ်းပါ
ပရောက်စီမှတစ်ဆင့် အပ်လုဒ်တင်သောအခါ ဖိုင်၏ ဘိုက်များနှင့် ဘိုက်အရှည်များကို ထိန်းသိမ်းပါ၊ ဖိုင်ကို စာသားအဖြစ် ဖော်ထုတ်ပြီး ASCII ဖြင့် ပြန်လည်တည်ဆောက်ခြင်းအစား။
ဘိုင်နရီဖိုင်တစ်ခုသည် HTTP ကလိုင်းထံ ဘိုက်များအဖြစ် ရောက်ရှိသင့်သည်။ ၎င်းကို စာသားဖတ်ကိရိယာဖြင့် ဖတ်ပြီး ရလာသော စာတန်းကို ASCII အဖြစ် ပြန်လည်ကုဒ်လုပ်ခြင်းသည် ပရောက်စီ ဘာမှမလက်ခံမီ ကိန်းဂဏန်းများကို အစားထိုးနိုင်သည်။ စာသားနမူနာငယ်တစ်ခု အလုပ်လုပ်ခြင်းသည် ထိုလမ်းကြောင်းကို ပုံ၊ မော်တမ် သို့မဟုတ် စာရွက်စာတမ်းအတွက် လုံခြုံစေမည်မဟုတ်ပါ။
ရှိပြီးသား .NET အပ်လုဒ်လမ်းကြောင်းတွင် ထိုပြောင်းလဲမှုကို ဘိုင်နရီကိုယ်ထည်ရင်းမြစ်ဖြင့် အစားထိုးပါ:
using var file = File.OpenRead(path);
using var content = new StreamContent(file);
အကြောင်းအရာကို အက်ပ်၏ သတ်မှတ်ထားသော HTTP အပ်လုဒ်မှတစ်ဆင့် ပို့ပါ; ဤအပိုင်းက ကိုယ်ထည်ရင်းမြစ်ကို တည်ဆောက်ပြီး ရှိပြီးသား ကလိုင်းက method၊ ဦးတည်ရာ၊ ပရောက်စီနှင့် သက်တမ်းကို ဆက်လက်ကိုင်တွယ်သည်။
စာတန်းအဟောင်း၏ စာလုံးရေမှ တွက်ချက်ထားသော Content-Length ကို ဖယ်ရှားပါ။ ဤအကွက်သည် အော့ကတက်များဖြင့် တိုင်းတာသည်။ မတူညီစွာ ကုဒ်လုပ်ထားသော buffer နှင့် စာလုံးရေကို တွဲမထားဘဲ HTTP လိုင်ဘရီအား ကိုယ်ထည်ကိုယ်စားပြုမှုမှ ဘောင်တည်ဆောက်ခွင့်ပြုပါ။
ရည်ရွယ်ချက်ရှိသော စာသားအပ်လုဒ်အတွက် ကုဒ်လုပ်ခြင်းကို ရှင်းလင်းစွာ ရွေးချယ်ပြီး လိုအပ်သော အရှည်ကို ပို့သည့် ဘိုက်များမှ ရယူပါ။ ထိုစာသားပုံစံ ဆုံးဖြတ်ချက်ကို မည်သည့်ဖိုင်များတွင်မျှ မကျင့်သုံးသင့်ပါ။
ပို့ဆောင်ထားသော ဖိုင်ကို ယုံကြည်ရသော မျှော်မှန်းတန်ဖိုးနှင့် နှိုင်းယှဉ်ပါ။ HTTP အောင်မြင်မှုသည် ထိုအဆင့်တွင် အပ်လုဒ်လုပ်ငန်း ပြီးစီးကြောင်း အတည်ပြုသည်; ယခင်စာသားပြောင်းလဲမှုက မူရင်းဘိုက်များကို ထိန်းသိမ်းခဲ့ကြောင်း မပြနိုင်ပါ။