প্রক্সি ব্যর্থ হলে OkHttp কি সরাসরি সংযোগ করবে?
ব্যর্থ প্রক্সি সরাসরি অ্যাক্সেসে পৌঁছাতে পারে কি না তা নির্ধারণ করতে ক্লায়েন্ট সংস্করণ, রাউটিং প্রার্থী ও অ্যাপ্লিকেশনের পুনঃচেষ্টা পথ ব্যবহার করুন।
ঐতিহাসিক সিস্টেম-HTTP-প্রক্সি ক্ষেত্রে OkHttp 3.5.0-তে তার আচরণ বদলেছে: সেই প্রক্সি ব্যর্থ হওয়ার পর এটি সরাসরি সংযোগের চেষ্টা বন্ধ করেছে। নীরব ফলব্যাকের একটি পুরোনো প্রতিবেদন ওই পরিবর্তনের আগের আচরণ বর্ণনা করতে পারে।
সেই ইতিহাস প্রতিটি অ্যাপ্লিকেশনের রাউটিং নীতি নির্ধারণ করে না। আপনার নিজের অ্যাপ্লিকেশন থেকে আসা প্রতিবেদন ব্যাখ্যা করতে এই তিনটি পরীক্ষা অনুসরণ করুন:
- নির্ধারিত OkHttp সংস্করণ খুঁজুন। কপি করা উদাহরণের বয়সের বদলে অ্যাপ্লিকেশনের নির্ভরতা তথ্য ব্যবহার করুন, ফ্রেমওয়ার্ক যে সংস্করণ প্রকৃতপক্ষে বান্ডল করেছে সেটিসহ।
- এই ক্লায়েন্ট কীভাবে রাউট বেছে নেয় তা খুঁজুন। স্পষ্ট প্রক্সি ও কাস্টম ProxySelector ভিন্ন কনফিগারেশন। সিলেক্টর যদি প্রক্সির পরে সরাসরি প্রার্থী দেয়, তবে সে সরাসরি বিকল্প দিচ্ছে।
- ব্যর্থতা হ্যান্ডলার অনুসরণ করুন। অন্য ক্লায়েন্ট দিয়ে পুনঃচেষ্টা করা অ্যাপ্লিকেশন কোড খুঁজুন। ওই প্রতিস্থাপনের করা সরাসরি অনুরোধ প্রথম ক্লায়েন্টের সিদ্ধান্তের বাইরে।
বাধ্যতামূলক-প্রক্সি প্রয়োজনীয়তার জন্য সংশ্লিষ্ট ক্লায়েন্ট নীতিকে সরাসরি বিকল্প দেওয়ার বদলে থামতে হবে। প্রকৃত ক্লায়েন্ট ও পুনঃচেষ্টা পথ ওই প্রয়োজনীয়তার সঙ্গে মিলিয়ে যাচাই করুন; কেবল 3.5.0 পরিবর্তন কোনো মেশিন-ব্যাপী ট্রাফিক নিয়ম নয়।