Rumah  >  Artikel  >  pembangunan bahagian belakang  >  Minta Perisian Tengah Had Badan untuk Iris

Minta Perisian Tengah Had Badan untuk Iris

Susan Sarandon
Susan Sarandonasal
2024-11-02 12:41:02564semak imbas

Request Body Limit Middleware for Iris

Gambaran keseluruhan

Perisian tengah Iris Body Limit ialah alat yang berkuasa untuk mengawal saiz badan permintaan masuk dalam aplikasi web Iris anda. Dengan menetapkan had pada saiz badan permintaan, anda boleh menghalang pelanggan daripada menghantar muatan yang terlalu besar yang berpotensi mengatasi pelayan anda atau membawa kepada serangan penafian perkhidmatan (DoS). Perisian tengah ini amat berguna untuk aplikasi yang mengendalikan muat naik fail, muatan JSON atau apa-apa jenis data lain yang boleh berubah dengan ketara dalam saiz.

Mengapa Menggunakan Perisian Tengah Had Badan?

Keselamatan

Salah satu sebab utama untuk menggunakan perisian tengah had badan adalah untuk meningkatkan keselamatan aplikasi anda. Dengan mengehadkan saiz badan permintaan masuk, anda boleh mengurangkan risiko serangan DoS, di mana penyerang menghantar muatan yang besar untuk menghabiskan sumber pelayan.

Prestasi

Menghadkan saiz badan permintaan juga boleh meningkatkan prestasi aplikasi anda. Muatan yang besar boleh menggunakan sejumlah besar memori dan kuasa pemprosesan, memperlahankan pelayan anda dan menjejaskan pengalaman pengguna. Dengan menetapkan had yang munasabah, anda boleh memastikan pelayan anda kekal responsif dan cekap.

Pengurusan Sumber

Dalam aplikasi yang mengendalikan muat naik fail atau muatan JSON yang besar, adalah penting untuk mengurus sumber dengan berkesan. Dengan menetapkan had badan, anda boleh menghalang pelanggan daripada memuat naik fail yang terlalu besar atau menghantar objek JSON yang besar yang boleh membebankan sumber pelayan anda.

Pemasangan

Untuk menggunakan perisian tengah had badan, anda perlu mengimportnya dalam aplikasi Iris anda:

import "github.com/kataras/iris/v12/middleware/bodylimit"

Penggunaan

Persediaan Asas

Untuk menggunakan middleware had badan, anda perlu mencipta aplikasi Iris dan mendaftar middleware. Di bawah ialah contoh cara menyediakan perisian tengah dengan had 2 MB:

import "github.com/kataras/iris/v12/middleware/bodylimit"

Penjelasan

  • Had: Had badan. Fungsi baharu mengambil satu parameter, iaitu saiz maksimum badan permintaan dalam bait. Dalam contoh di atas, had ditetapkan kepada 10 bait.
  • Pengendali: Pengendali membaca kandungan permintaan dan menulisnya kembali kepada respons. Jika badan permintaan melebihi had, perisian tengah akan menghentikan permintaan dan mengembalikan status 413 Request Entiti Terlalu Besar.
  • Perisian tengah had badan menggunakan penyegerakan.Pool untuk mengurus tika Pembaca, yang digunakan untuk membaca kandungan permintaan dan menguatkuasakan had saiz. Pendekatan ini memastikan penggunaan memori yang cekap dan mengurangkan overhed untuk mencipta kejadian Pembaca baharu untuk setiap permintaan.

Pengendali Ujian dengan BodyLimit Middleware

Untuk menguji pengendali yang menggunakan middleware BodyLimit, anda boleh menggunakan pakej httptest yang disediakan oleh Iris. Berikut ialah contoh cara menguji pengendali:

package main

import (
    "github.com/kataras/iris/v12"
    "github.com/kataras/iris/v12/middleware/bodylimit"
)

func main() {
    app := iris.New()
    app.Use(bodylimit.New(2 * iris.MB)) // set the limit to 2 MB.

    handler := func(ctx iris.Context) {
        body, err := ctx.Body()
        if err != nil {
            ctx.StopWithPlainError(iris.StatusInternalServerError, err)
            return
        }

        ctx.Write(body) // write the request body back to the client.
    }

    app.Post("/", handler)
    app.Listen(":8080")
}

Kesimpulan

Perisian tengah Iris Body Limit menyediakan cara yang mudah namun berkesan untuk mengawal saiz badan permintaan masuk dalam aplikasi web Iris anda. Dengan menetapkan had pada saiz badan permintaan, anda boleh meningkatkan keselamatan, prestasi dan pengurusan sumber aplikasi anda. Dengan penyepaduan mudah dan ciri lanjutan, perisian tengah ini ialah alat yang berharga untuk mana-mana pembangun Iris.

Atas ialah kandungan terperinci Minta Perisian Tengah Had Badan untuk Iris. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
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