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 చర్చలు చేసే కనెక్టర్ను ఉపయోగించండి. ఆ చర్చలు ప్రోటోకాల్ పని; ప్రాక్సీ చిరునామాకు మాత్రమే ముడి స్ట్రీమ్ సృష్టించడం దాన్ని చేయలేదు.