CFStream প্রক্সি বৈশিষ্ট্য স্ট্রিমের ধরনের ওপর নির্ভর করে
বিদ্যমান CFStream অ্যাপ্লিকেশনে স্ট্রিমের প্রোটোকল সমর্থন অনুযায়ী HTTP বা SOCKS বৈশিষ্ট্য বেছে নিন।
CFStream কোড রক্ষণাবেক্ষণ করে এমন অ্যাপ্লিকেশনে যে ধরনের স্ট্রিম কনফিগার করা হচ্ছে সেই অনুযায়ী প্রক্সি বৈশিষ্ট্য বেছে নিন। HTTP অনুরোধ স্ট্রিমে এমন প্রোটোকল ব্যবস্থাপনা থাকে যা সাধারণ সকেট স্ট্রিম কেবল তার বৈশিষ্ট্য অভিধান থেকে পায় না।
| যে সংযোগ তৈরি হচ্ছে | নথিভুক্ত কনফিগারেশন |
|---|---|
| HTTP প্রক্সির মাধ্যমে HTTP CFStream | kCFStreamPropertyHTTPProxy |
| SOCKS প্রক্সির মাধ্যমে CFStream | kCFStreamPropertySOCKSProxy |
Apple HTTP বৈশিষ্ট্যটিকে নির্দিষ্টভাবে HTTP CFStream কনফিগার করার বৈশিষ্ট্য হিসেবে বর্ণনা করে। CFHTTPMessage অনুরোধ থেকে CFReadStreamCreateForHTTPRequest দিয়ে এমন স্ট্রিম তৈরি করা যায়। সেই স্ট্রিম খুললে HTTP অনুরোধটি ক্রমবদ্ধ ও প্রেরিত হয়।
SOCKS বৈশিষ্ট্য অন্তত SOCKS প্রক্সি হোস্ট ও পোর্ট কী থাকা একটি CFDictionary গ্রহণ করে। CFStream-এ SOCKS ব্যবস্থাপনার জন্য এটিই সংশ্লিষ্ট সার্বজনীন বৈশিষ্ট্য। প্রক্সি শংসাপত্র ছাড়া অনুমোদিত সার্বজনীন TCP পরীক্ষার জন্য SOCKS প্রক্সি তালিকা সেই অভিধানের জন্য প্রার্থী হোস্ট ও পোর্ট মান দেয়। স্ট্রিমের সমর্থিত প্রোটোকল মিলিয়ে নিন এবং প্রকৃত গন্তব্য ও পোর্টে প্রবেশ যাচাই করুন।
স্ট্রিম খোলার আগে নির্বাচিত বৈশিষ্ট্যটি প্রয়োগ করুন এবং বৈশিষ্ট্য নির্ধারণের কলের বুলিয়ান ফলাফল পরীক্ষা করুন। প্রত্যাখ্যাত বৈশিষ্ট্য বোঝাতে পারে স্ট্রিম বা মানটি অনুরোধকৃত কনফিগারেশন সমর্থন করে না।
HTTP প্রক্সির মাধ্যমে যেকোনো TCP ট্রাফিকের জন্য প্রয়োজনীয় CONNECT আলোচনা সম্পন্ন করে এমন একটি সংযোগকারী ব্যবহার করুন। সেই আলোচনা প্রোটোকলের কাজ; কেবল প্রক্সির ঠিকানায় একটি কাঁচা স্ট্রিম তৈরি করলে তা সম্পন্ন হয় না।