using (WebResponse response = request.GetResponse())
{
    response.GetResponseStream().CopyTo(destination);
}

هر زوړ HttpWebRequest ځواب په داسې حد کې وساتئ چې د هغه کارول بشپړ او هغه خوشې کړي. دلته destination د اپلیکیشن د لیکلو وړ بهر وتونکې جریان دی؛ using بلاک WebResponse خوشې کوي حتی که کاپي ناکامه شي، پرته له دې چې د هغه بهر وتونکي مالکیت واخلي.

یوه پروکسي غوښتنه بریالۍ کېدل او بلې ته انتظار کول ښايي نیمګړي ځوابونه ښیي چې د اړیکې سرچینې نیسي. یوازې WebResponse ترلاسه کول د هغه بدن نه بشپړوي. د غوښتنې وخت حد انتظار محدودوي، نه د هر هغه ځواب ژوند چې مخکې ترلاسه شوی.

همدا مالکیت پر تېروتنو هم پلي کړئ. WebException کېدای شي هغه ځواب ولري چې ستاسو کوډ یې ګوري؛ د کتلو وروسته یې وتړئ. د لیږد ناکامي ممکن هېڅ ځواب ونه لري.

خوشې کول د ځواب سرچینې بېرته ورکوي خو په هر حالت کې د بیا کارېدونکو اړیکو ژمنه نه کوي. پروتوکول، سرور او د بدن کارول لا هم مهم دي.

دا د زوړ WebRequest سټیک ساتنې پورې اړه لري. په نوي کوډ کې د ریښتیني کلاینټ د ځواب/جریان مالکیت تعقیب کړئ؛ د HttpClient لپاره، ځوابونه د هغوی د خوشې کولو په حد کې وساتئ، او دا د پاکولو ناکامي د پروکسي تصدیق یا لارې ټاکلو څخه جلا وپېژنئ.

اړوندې مقالې