W aplikacji utrzymującej kod CFStream wybierz właściwość proxy zgodnie z rodzajem konfigurowanego strumienia. Strumień żądania HTTP ma obsługę protokołu, której zwykły strumień gniazda nie uzyskuje wyłącznie ze swojego słownika właściwości.

Budowane połączenieUdokumentowana konfiguracja
HTTP CFStream przez proxy HTTPkCFStreamPropertyHTTPProxy
CFStream przez proxy SOCKSkCFStreamPropertySOCKSProxy

Apple opisuje właściwość HTTP konkretnie jako konfigurację HTTP CFStream. Taki strumień można utworzyć z żądania CFHTTPMessage za pomocą CFReadStreamCreateForHTTPRequest. Otwarcie tego strumienia serializuje i wysyła żądanie HTTP.

Właściwość SOCKS przyjmuje CFDictionary zawierający co najmniej klucze hosta i portu proxy SOCKS. To odpowiednia publiczna właściwość do obsługi SOCKS w strumieniu CFStream. Do dozwolonego publicznego testu TCP bez danych logowania proxy lista proxy SOCKS oferuje kandydackie wartości hosta i portu dla tego słownika. Dopasuj do protokołu obsługiwanego przez strumień i zweryfikuj dostęp do rzeczywistego miejsca docelowego i portu.

Zastosuj wybraną właściwość przed otwarciem strumienia i sprawdź wynik logiczny wywołania ustawiającego właściwość. Odrzucona właściwość może oznaczać, że strumień lub wartość nie obsługują żądanej konfiguracji.

W przypadku dowolnego ruchu TCP przez proxy HTTP użyj łącznika, który wykonuje wymagane negocjacje CONNECT. Ta negocjacja to praca protokołu; utworzenie surowego strumienia tylko do adresu proxy jej nie wykonało.

Powiązane artykuły