NetworkStream.DataAvailable == false មានន័យថាគ្មានបៃដែលត្រៀមអានភ្លាមៗទេ។ វាមិនមានន័យថាការឆ្លើយតប HTTP បានបញ្ចប់ទេ។ រង្វិលជុំដែលឈប់នៅទីនោះអាចកាត់ការទាញយក SOCKS ធម្មតាទាំងស្រុង ក្នុងចន្លោះរវាងកញ្ចប់។

បន្ទាប់ពី SOCKS បង្កើតការតភ្ជាប់ TCP ហើយ ការដាក់ស៊ុម HTTP នៅតែផ្តល់ច្បាប់បញ្ចប់៖

  • តួ Content-Length បញ្ចប់បន្ទាប់ពីបៃមាតិកាដែលបានប្រកាស។
  • ការឆ្លើយតប chunked ត្រូវការ chunk បញ្ចប់ និង trailer ពាក់ព័ន្ធ។
  • ការឆ្លើយតបដែលកំណត់ដោយការតភ្ជាប់ បញ្ចប់ជាមួយការតភ្ជាប់។
  • ស្ថានភាពខ្លះ និងការឆ្លើយតបចំពោះ HEAD គ្មានតួ។

អានស្ថានភាព និងចំណងជើង ដើម្បីកំណត់ច្បាប់ដែលអនុវត្ត។ ការរង់ចាំតែការបិទមិនមែនជាដំណោះស្រាយទូទៅទេ ព្រោះការឆ្លើយតប HTTP ពេញលេញអាចបន្ថែមការតភ្ជាប់ឱ្យបើក។ សមត្ថភាពរបស់ buffer មួយក៏មិនពាក់ព័ន្ធនឹងប្រវែងនៃការឆ្លើយតបដែរ។

ប្រើការអនុវត្តការដាក់ស៊ុមរបស់អតិថិជន HTTP នៅពេលវាគាំទ្រការដឹកជញ្ជូនតាម proxy ដែលបានជ្រើស។ នៅលើ runtime .NET ទំនើបដែលត្រូវគ្នា សូមពិចារណា ការគាំទ្រ SOCKS ដើមរបស់ HttpClient។ ការអនុវត្តឆៅត្រូវរក្សាស្ថានភាពញែកចេញរវាងចំណងជើងមិនពេញលេញ និងការអានតួ ហើយបែងចែកការបញ្ចប់ជោគជ័យពីការបោះបង់ ការអស់ពេល និង EOF ដែលមិនបានរំពឹង។ សម្រាប់សំណើអានដែលមិនទទេ បៃសូន្យដែលអានបានមានន័យថា stream បានបញ្ចប់; នេះខុសពីការគ្មានបៃនៅក្នុងជួរនៅពេលនេះ។

proxy អាចធ្វើឱ្យចន្លោះពេលឃើញច្បាស់ ប៉ុន្តែវាមិនប្តូរជួរទទួលទទេទៅជាសញ្ញាចុងបញ្ចប់សារទេ។

អត្ថបទពាក់ព័ន្ធ