Mengoptimumkan Penggunaan Data HTTP untuk Mengikis
Untuk meningkatkan kecekapan operasi mengikis data HTTP GET anda, adalah penting untuk mempertimbangkan kemungkinan menemui URL yang menyampaikan sejumlah besar data. Untuk melindungi daripada perkara ini, hadkan saiz data yang diterima oleh permintaan GET, dengan itu mengelakkan kemungkinan kesesakan.
Penyelesaian: Mengehadkan Penggunaan Data dengan io.LimitedReader
Nasib baik, Go's io pakej menyediakan penyelesaian yang mudah - io.LimitedReader. Ia mengehadkan jumlah data yang dibaca daripada io yang disediakan. Pembaca kepada had yang ditentukan, dengan berkesan memotong pengambilan data sebaik sahaja had ini dicapai:
limitedReader := &io.LimitedReader{R: response.Body, N: limit} body, err := io.ReadAll(limitedReader)
Dalam contoh ini, io.LimitedReader mengehadkan bacaan data daripada badan respons HTTP kepada had yang ditentukan.
Sebagai alternatif, anda boleh menggunakan fungsi io.LimitReader untuk mencapai perkara yang sama hasil:
body, err := io.ReadAll(io.LimitReader(response.Body, limit))
Dengan menggunakan io.LimitedReader atau io.LimitReader, anda boleh mengawal dengan berkesan jumlah data yang diambil daripada permintaan HTTP GET, menghalang pengikis anda daripada dibelenggu oleh data yang berlebihan.
Atas ialah kandungan terperinci Bagaimanakah Saya Boleh Mengoptimumkan Permintaan HTTP GET untuk Menghalang Pengikis Data Saya?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!