NetworkStream.DataAvailable == false waxay ka dhigan tahay in aanay jirin baytad diyaar u ah akhris degdeg ah. Taasi macneheedu maaha in jawaabta HTTP dhammaatay. Wareeg joogsada halkaas wuxuu goyn karaa soo-dejin SOCKS caadi ah inta lagu jiro farqiqda u dhexeeya xirmooyinka.

Ka dib markii SOCKS sameeyo xiriirka TCP, jirka HTTP ayaa weli bixiya qaanuunka dhamaystirka:

  • Jir Content-Length leh wuxuu dhammaadaa ka dib baytada guudka ee la sheegay.
  • Jawaabta chunked waxay u baahan tahay chunk-keeda dhammaadka iyo trailer-ada khuseeya.
  • Jawaabta xiriirka ku xaddidan waxay ku dhammaataa xiriirka.
  • Qaar ka mid ah xaaladaha iyo jawaabaha HEAD ma laha jir.

Akhri xaaladda iyo cinwaannada si aad u go'aamiso qaanuunka khuseeya. Sugitaanka oo kaliya xirnaanta maaha xal guud, sababtoo ah jawaab HTTP dhamaystiran waxay ka tagi kartaa xiriirka furan. Awoodda hal buffer-ka sidoo kale lama xiriirto dhererka jawaabta.

Isticmaal hirgelinta jirka macmiilka HTTP marka ay taageerto gaadiidka proxy-ga la doortay. On runtime .NET casri ah oo ku habboon, tixgeli taageerada SOCKS ee asalka ah ee HttpClient. Hirgelin ceyriin waa in ay ilaaliso xaaladda falanqaynta inta lagu jiro cinwaannada qayb ahaan iyo akhrinta jirka, oo ay kala soocdo dhamaystirka guulaysatay iyo joojinta, waqtiga dhammaadka iyo EOF lama filaan ah. Codsi akhris oo aan madhanayn, eber baytad la akhriyay waxay ka dhigan tahay in qulqulka dhammaaday; tani way ka duwan tahay in aan hadda safka ku jirin baytad.

Proxy-ga wuxuu ka dhigi karaa farqiqyada waqtiga mid muuqda, laakiin ma beddelo safka qaadashada ee madhan calaamad dhammaadka fariinta.

Maqaallo la xiriira