Node.js 17 – Làm việc với Form trong express

0
140

Dưới đây là một ví dụ về form trong HTML.

Khi người dùng nhấn vào nút submit , trình duyệt sẽ tự động gửi một yêu cầu theo phương thức POST tới đường dẫn /submit-form , đồng thơi trình duyệt sẽ gửi kèm theo dữ liệu của người dùng đã nhập ở ô input và được mã hóa dưới dạng application/x-www-form-urlencoded.

Trong trường hợp này, dữ liệu ở trên form sẽ chứa giá trị của ô username do người dùng nhập vào.

Bạn cũng có thể gửi dữ liệu từ form bằng phương thức GET , nhưng phần lớn các dữ liệu từ form sẽ được gửi bằng phương thức POST .

Dữ liệu từ form sẽ được gửi trong phần body của phương thức POST.

Để có thể sử dụng những dữ liệu ở trong đó, bạn cần sử dụng tới.

express.urlencoded()  là một middleware được cung cấp bởi express.

Cú pháp

Mô tả tham số

  • options các tùy chọn khi giải mã

Khi sử dụng express.urlencoded() các bạn có thể nhận được dữ liệu ở trong đối tượng request.body.

Ví dụ

File views/form.ejs

File server.js

Danh sách mô tả các options

Thuộc tính Miêu tả Kiểu Giá trị mặc định
extended Tùy chọn này cho phép lựa chọn giữa phân tích cú pháp dữ liệu được mã hóa URL với querystringthư viện (khi nào false) hoặcqsthư viện (khi nào true). Cú pháp “mở rộng” cho phép các đối tượng và mảng phong phú được mã hóa thành định dạng được mã hóa URL, cho phép trải nghiệm giống như JSON với mã hóa URL. Để biết thêm thông tin, vui lòng xem thư viện qs . Boolean true
inflate Cho phép hoặc vô hiệu hóa việc xử lý các cơ quan bị nén (nén);khi bị vô hiệu hóa, cơ thể xì hơi bị từ chối. Boolean true
limit Kiểm soát kích thước thân yêu cầu tối đa. Nếu đây là một số, thì giá trị chỉ định số byte; nếu nó là một chuỗi, giá trị được chuyển đến thư viện byte để phân tích cú pháp. Mixed "100kb"
parameterLimit Tùy chọn này kiểm soát số lượng thông số tối đa được phép trong dữ liệu được mã hóa URL. Nếu yêu cầu chứa nhiều thông số hơn giá trị này, lỗi sẽ được tăng lên. Number 1000
type Điều này được sử dụng để xác định loại media nào mà phần mềm trung gian sẽ phân tích cú pháp. Tùy chọn này có thể là một chuỗi, một chuỗi các chuỗi hoặc một hàm. Nếu không phải là một hàm, typetùy chọn được chuyển trực tiếp tới thư viện kiểu- và, đây có thể là tên mở rộng (như urlencoded), kiểu mime (như application/x-www-form-urlencoded), hoặc kiểu mime với ký tự đại diện (như */x-www-form-urlencoded). Nếu một hàm, typetùy chọn được gọi là fn(req)và yêu cầu được phân tích cú pháp nếu nó trả về giá trị trung thực. Mixed "application/x-www-form-urlencoded"
verify Tùy chọn này, nếu được cung cấp, được gọi là verify(req, res, buf, encoding)buflà một phần Buffercủa thân yêu cầu thô và encodinglà mã hóa của yêu cầu. Việc phân tích cú pháp có thể bị hủy bỏ bằng cách ném một lỗi. Function undefined

BÌNH LUẬN

Vui lòng nhập bình luận của bạn
Vui lòng nhập tên của bạn ở đây