Kekalkan Bait Fail Binari Semasa Memuat Naik Melalui Proksi
Kekalkan bait dan panjang bait fail semasa memuat naik melalui proksi dan bukannya menyahkod artifak sebagai teks lalu membinanya semula dengan ASCII.
Fail binari sepatutnya sampai kepada klien HTTP sebagai bait. Membacanya dengan pembaca teks dan mengekod semula rentetan yang terhasil sebagai ASCII boleh menggantikan nilai sebelum proksi menerima apa-apa. Sampel teks kecil yang berfungsi tidak menjadikan laluan itu selamat untuk imej, arkib atau dokumen.
Dalam laluan muat naik .NET sedia ada, gantikan penukaran itu dengan sumber badan binari:
using var file = File.OpenRead(path);
using var content = new StreamContent(file);
Salurkan kandungan melalui muat naik HTTP yang dikonfigurasikan aplikasi; serpihan ini menetapkan sumber badan, manakala klien sedia ada masih memiliki kaedah, destinasi, proksi dan pengendalian hayat.
Buang sebarang Content-Length yang dikira daripada kiraan aksara rentetan lama. Medan ini mengukur oktet. Biarkan pustaka HTTP membina kerangka daripada perwakilan badan dan bukannya memasangkan kiraan aksara dengan penimbal yang dikodkan secara berbeza.
Untuk muat naik teks yang disengajakan, pilih pengekodan secara eksplisit dan terbitkan panjang yang diperlukan daripada bait yang dihantar. Keputusan format teks itu tidak sepatutnya digunakan pada fail sewenang-wenangnya.
Bandingkan artifak yang dipindahkan dengan nilai jangkaan yang dipercayai. Kejayaan HTTP mengesahkan bahawa operasi muat naik selesai pada lapisan itu; ia tidak dapat menunjukkan bahawa penukaran teks sebelumnya mengekalkan bait asal.