جب WinHTTP 407 اور 401 کے درمیان بدلتا ہے
منتخب پروکسی تصدیق کی حالت محفوظ رکھیں اور دوبارہ کوشش سے پہلے اسے دوبارہ لاگو کریں، ساتھ ہی منزل کے الگ چیلنج کو الگ سنبھالیں۔
ایک WinHTTP درخواست پروکسی پر تصدیق کرتی ہے، ویب سائٹ کا 401 وصول کرتی ہے، پھر اگلی بھیجنے پر ایک اور 407 پاتی ہے۔ پروکسی اور ویب سائٹ کی تصدیق کی حالتیں الگ ہیں، اور دوبارہ بھیجنے کے راستے کو دونوں محفوظ رکھنا ہوتا ہے۔
مائیکروسافٹ کا اصل WinHTTP تصدیق کا نمونہ منتخب کردہ پروکسی اسکیم کو ایک متغیر میں رکھتا ہے اور وہ اسکیم منتخب ہونے کے بعد ہر WinHttpSendRequest سے پہلے پروکسی اکاؤنٹ دوبارہ لاگو کرتا ہے۔
- درخواست بھیجیں اور جواب کا جائزہ لیں۔
- 407 کے لیے، پیش کردہ اسکیمیں پوچھیں اور منتخب کردہ پروکسی اسکیم یاد رکھیں۔
- دوبارہ بھیجنے سے پہلے، اسی اسکیم اور اکاؤنٹ کے ساتھ WINHTTP_AUTH_TARGET_PROXY کے لیے WinHttpSetCredentials کال کریں۔
- منزل کے 401 کے لیے، اس کی اسکیم حاصل کریں اور اگلی بھیجنے کے لیے یاد رکھی گئی پروکسی حالت محفوظ رکھتے ہوئے سرور کی اسناد مقرر کریں۔
نمونہ خاص طور پر سرور چیلنج یا ری ڈائریکٹ کے بعد دوبارہ تصدیق کو پروکسی اسناد دوبارہ لاگو کرنے کی وجہ بتاتا ہے۔ کال کو صرف پہلی 407 شاخ میں رکھنے سے کوئی دوسرا دوبارہ کوشش کا راستہ متوقع سیٹ اپ کے بغیر رہ سکتا ہے۔
ہر API نتیجہ جانچیں اور بار بار ہونے والی ناکامیوں کو محدود رکھیں۔ مائیکروسافٹ کا مختصر نمونہ پچھلی حالت کا سراغ لگاتا ہے، جبکہ پروڈکشن دوبارہ کوشش کی پالیسی کو بار بار بدلتے ہوئے تسلسل کو بھی پہچاننا چاہیے۔
اگر ناکامی کے بعد صارف متبادل اکاؤنٹ دے، تو اُس دوبارہ بھیجنے والے راستے کے استعمال کردہ اقدار کو اپ ڈیٹ کریں۔ WinHttpSetCredentials درخواست کے دائرے میں ہے؛ یہ عمل کے پیمانے پر پاس ورڈ کا ذخیرہ نہیں جس کا مواد تمام آئندہ درخواستوں کے لیے بدل دیا جائے۔