Rumah > pembangunan bahagian belakang > Golang > Patutkah Anda Gunakan `defer req.Body.Close()` dalam Pengendali HTTP?

Patutkah Anda Gunakan `defer req.Body.Close()` dalam Pengendali HTTP?

Barbara Streisand
Lepaskan: 2024-11-10 05:02:02
asal
951 orang telah melayarinya

Should You Use `defer req.Body.Close()` in HTTP Handlers?

Bila Menggunakan defer req.Body.Close() dalam Pengendali HTTP

Dalam banyak aplikasi sebelah pelayan web, perkara biasa untuk dikendalikan permintaan HTTP masuk menggunakan pakej net/http. Satu persoalan yang timbul ialah di mana hendak meletakkan pernyataan penangguhan req.Body.Close().

Peraturan Am: Tidak Perlu Menutup Badan Permintaan

Mengikut http .Permintaan dokumentasi, pelayan secara automatik menutup badan permintaan. Oleh itu, pengendali tidak perlu menutupnya secara eksplisit.

// The Server will close the request body. The ServeHTTP
// Handler does not need to.
Salin selepas log masuk

Mengapa Tidak Gunakan tangguh?

Menggunakan defer req.Body.Close() adalah berlebihan dan boleh membawa kepada masalah prestasi. Ia boleh mencipta sambungan HTTP yang tidak perlu dan menyekat permintaan lain daripada diproses.

Oleh itu, amalan terbaik untuk mengelakkan penggunaan defer req.Body.Close() dalam pengendali HTTP.

Atas ialah kandungan terperinci Patutkah Anda Gunakan `defer req.Body.Close()` dalam Pengendali HTTP?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Artikel terbaru oleh pengarang
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan