Gửi mảng từ Node JS sang HTML

Tạo một ứng dụng Express. Hàm

fn[res, path, stat]
53 là hàm cấp cao nhất được xuất bởi mô-đun
fn[res, path, stat]
54

const express = require['express']
const app = express[]

phương pháp

bày tỏ. json[[tùy chọn]]

Đây là một chức năng phần mềm trung gian tích hợp trong Express. Nó phân tích các yêu cầu đến bằng tải trọng JSON và dựa trên trình phân tích cú pháp nội dung

Trả về phần mềm trung gian chỉ phân tích cú pháp JSON và chỉ xem xét các yêu cầu có tiêu đề

fn[res, path, stat]
55 khớp với tùy chọn
fn[res, path, stat]
56. Trình phân tích cú pháp này chấp nhận mọi mã hóa Unicode của nội dung và hỗ trợ lạm phát tự động mã hóa
fn[res, path, stat]
57 và
fn[res, path, stat]
58

Đối tượng

fn[res, path, stat]
59 mới chứa dữ liệu được phân tích cú pháp được điền vào đối tượng
fn[res, path, stat]
60 sau phần mềm trung gian [i. e.
fn[res, path, stat]
61] hoặc một đối tượng trống [
fn[res, path, stat]
62] nếu không có nội dung để phân tích cú pháp,
fn[res, path, stat]
55 không khớp hoặc xảy ra lỗi

Vì hình dạng của

fn[res, path, stat]
61 dựa trên đầu vào do người dùng kiểm soát, nên tất cả các thuộc tính và giá trị trong đối tượng này đều không đáng tin cậy và phải được xác thực trước khi tin cậy. Ví dụ:
fn[res, path, stat]
65 có thể bị lỗi theo nhiều cách, chẳng hạn như
fn[res, path, stat]
66 có thể không ở đó hoặc có thể không phải là một chuỗi và
fn[res, path, stat]
67 có thể không phải là một hàm mà thay vào đó là một chuỗi hoặc đầu vào khác của người dùng

Bảng sau mô tả các thuộc tính của đối tượng tùy chọn

fn[res, path, stat]
68

Thuộc tínhDescriptionTypeDefault
fn[res, path, stat]
69Cho phép hoặc vô hiệu hóa việc xử lý các phần tử [nén] bị xì hơi; . Boolean
fn[res, path, stat]
70
fn[res, path, stat]
71Kiểm soát kích thước cơ thể yêu cầu tối đa. Nếu đây là một số, thì giá trị chỉ định số byte; . Hỗn hợp
fn[res, path, stat]
72
fn[res, path, stat]
73Tùy chọn
fn[res, path, stat]
73 được chuyển trực tiếp tới
fn[res, path, stat]
75 làm đối số thứ hai. Bạn có thể tìm thêm thông tin về đối số này trong tài liệu MDN về JSON. phân tích cú pháp. Hàm
fn[res, path, stat]
76____077Cho phép hoặc không cho phép chỉ chấp nhận mảng và đối tượng; . Boolean
fn[res, path, stat]
70
fn[res, path, stat]
56Điều này được sử dụng để xác định loại phương tiện 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ảng các chuỗi hoặc một hàm. Nếu không phải là một chức năng, tùy chọn
fn[res, path, stat]
56 được chuyển trực tiếp đến thư viện loại là và đây có thể là tên mở rộng [như
fn[res, path, stat]
82], loại kịch câm [như
fn[res, path, stat]
83] hoặc loại kịch câm có ký tự đại diện [như
fn[res, path, stat]
84 hoặc
fn[res, path, stat]
85]. Nếu là một hàm, tùy chọn
fn[res, path, stat]
56 được gọi là
fn[res, path, stat]
87 và yêu cầu được phân tích cú pháp nếu nó trả về giá trị trung thực. Mixed
fn[res, path, stat]
88
fn[res, path, stat]
89Tùy chọn này, nếu được cung cấp, được gọi là
fn[res, path, stat]
90, trong đó
fn[res, path, stat]
91 là một
fn[res, path, stat]
92 của nội dung yêu cầu thô và
fn[res, path, stat]
93 là 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 đưa ra lỗi. Chức năng____094

bày tỏ. tĩnh [gốc, [tùy chọn]]

Đây là một chức năng phần mềm trung gian tích hợp trong Express. Nó phục vụ các tệp tĩnh và dựa trên phục vụ-tĩnh

GHI CHÚ. Để có kết quả tốt nhất, hãy sử dụng bộ nhớ cache proxy ngược để cải thiện hiệu suất cung cấp nội dung tĩnh

Đối số

fn[res, path, stat]
95 chỉ định thư mục gốc để phục vụ nội dung tĩnh. Hàm xác định tệp sẽ phân phối bằng cách kết hợp
fn[res, path, stat]
96 với thư mục
fn[res, path, stat]
95 được cung cấp. Khi không tìm thấy tệp, thay vì gửi phản hồi 404, nó sẽ gọi
fn[res, path, stat]
98 để chuyển sang phần mềm trung gian tiếp theo, cho phép xếp chồng và dự phòng

Bảng sau mô tả các thuộc tính của đối tượng

fn[res, path, stat]
68. Xem thêm ví dụ bên dưới

Thuộc tínhDescriptionTypeDefault
fn[res, path, stat]
800Xác định cách tệp dotfiles [tệp hoặc thư mục bắt đầu bằng dấu chấm “. ”] được xử lý

Xem dotfiles bên dưới

Chuỗi“bỏ qua”
fn[res, path, stat]
801Bật hoặc tắt tạo etag

GHI CHÚ.

fn[res, path, stat]
802 luôn gửi ETags yếu

Boolean
fn[res, path, stat]
70____4804Đặt dự phòng cho phần mở rộng tệp. Nếu không tìm thấy tệp, hãy tìm tệp có phần mở rộng được chỉ định và cung cấp tệp đầu tiên được tìm thấy. Thí dụ.
fn[res, path, stat]
805. Mixed
fn[res, path, stat]
806
fn[res, path, stat]
807Cho phép các lỗi máy khách bỏ qua dưới dạng các yêu cầu chưa được xử lý, nếu không thì chuyển tiếp lỗi máy khách

Xem dự phòng bên dưới

Boolean
fn[res, path, stat]
70____4809Bật hoặc tắt chỉ thị
fn[res, path, stat]
809 trong tiêu đề phản hồi
fn[res, path, stat]
811. Nếu được bật, tùy chọn
fn[res, path, stat]
812 cũng phải được chỉ định để bật bộ nhớ đệm. Chỉ thị
fn[res, path, stat]
809 sẽ ngăn khách hàng được hỗ trợ thực hiện các yêu cầu có điều kiện trong suốt thời gian tồn tại của tùy chọn
fn[res, path, stat]
812 để kiểm tra xem tệp đã thay đổi chưa. Boolean
fn[res, path, stat]
806
fn[res, path, stat]
816Gửi tệp chỉ mục thư mục được chỉ định. Đặt thành
fn[res, path, stat]
806 để tắt lập chỉ mục thư mục. “chỉ số” hỗn hợp. html”
fn[res, path, stat]
818Đặt tiêu đề
fn[res, path, stat]
819 thành ngày sửa đổi cuối cùng của tệp trên HĐH. Boolean
fn[res, path, stat]
70
fn[res, path, stat]
812Đặt thuộc tính max-age của tiêu đề Kiểm soát bộ đệm theo mili giây hoặc một chuỗi ở định dạng ms. Number0
fn[res, path, stat]
822Chuyển hướng đến dấu “/” khi tên đường dẫn là một thư mục. Boolean
fn[res, path, stat]
70____4824Chức năng đặt tiêu đề HTTP để phân phát cùng với tệp

Xem setHeaders bên dưới

Hàm số

Để biết thêm thông tin, hãy xem Cung cấp tệp tĩnh trong Express. và Sử dụng phần mềm trung gian - Phần mềm trung gian tích hợp

dotfiles

Các giá trị có thể có cho tùy chọn này là

  • “allow” - Không xử lý đặc biệt cho dotfiles
  • “deny” - Từ chối yêu cầu đối với dotfile, trả lời bằng
    fn[res, path, stat]
    
    825, sau đó gọi
    fn[res, path, stat]
    
    98
  • “ignore” - Hành động như thể dotfile không tồn tại, trả lời bằng
    fn[res, path, stat]
    
    827, sau đó gọi
    fn[res, path, stat]
    
    98
thất bại

Khi tùy chọn này là

fn[res, path, stat]
70, các lỗi máy khách như yêu cầu không hợp lệ hoặc yêu cầu đối với tệp không tồn tại sẽ khiến phần mềm trung gian này chỉ cần gọi
fn[res, path, stat]
98 để gọi phần mềm trung gian tiếp theo trong ngăn xếp. Khi sai, những lỗi này [thậm chí là lỗi 404], sẽ gọi
fn[res, path, stat]
831

Đặt tùy chọn này thành

fn[res, path, stat]
70 để bạn có thể ánh xạ nhiều thư mục vật lý tới cùng một địa chỉ web hoặc cho các tuyến để điền vào các tệp không tồn tại

Sử dụng

fn[res, path, stat]
806 nếu bạn đã gắn phần mềm trung gian này vào một đường dẫn được thiết kế để trở thành một thư mục hệ thống tệp duy nhất, cho phép đoản mạch các 404 để giảm chi phí. Phần mềm trung gian này cũng sẽ trả lời tất cả các phương thức

Đối với tùy chọn này, hãy chỉ định một chức năng để đặt tiêu đề phản hồi tùy chỉnh. Thay đổi tiêu đề phải xảy ra đồng bộ

Chữ ký của hàm là

fn[res, path, stat]

Tranh luận

  • fn[res, path, stat]
    
    834, đối tượng phản hồi
  • fn[res, path, stat]
    
    835, đường dẫn tệp đang được gửi
  • fn[res, path, stat]
    
    836, đối tượng
    fn[res, path, stat]
    
    836 của tệp đang được gửi

Ví dụ về chuyển phát nhanh. tĩnh

Dưới đây là một ví dụ về việc sử dụng chức năng phần mềm trung gian

fn[res, path, stat]
802 với một đối tượng tùy chọn phức tạp

fn[res, path, stat]
8

bày tỏ. Bộ định tuyến[[tùy chọn]]

Tạo một đối tượng bộ định tuyến mới

fn[res, path, stat]
9

Tham số

fn[res, path, stat]
68 tùy chọn chỉ định hành vi của bộ định tuyến

PropertyDescriptionDefaultAvailability

fn[res, path, stat]
840Enable case sensitivity. Bị tắt theo mặc định, xử lý “/Foo” và “/foo” như nhau.
fn[res, path, stat]
841Duy trì các giá trị
fn[res, path, stat]
842 từ bộ định tuyến chính. Nếu cha và con có tên tham số xung đột, giá trị của con sẽ được ưu tiên.
fn[res, path, stat]
8064. 5. 0+______077Kích hoạt định tuyến nghiêm ngặt. Bị tắt theo mặc định, “/foo” và “/foo/” được bộ định tuyến xử lý như nhau

Bạn có thể thêm các tuyến phương thức HTTP và phần mềm trung gian [chẳng hạn như

fn[res, path, stat]
845,
fn[res, path, stat]
846,
fn[res, path, stat]
847, v.v.] vào
fn[res, path, stat]
848 giống như một ứng dụng

Để biết thêm thông tin, xem Bộ định tuyến

bày tỏ. được mã hóa url [[tùy chọn]]

Đây là một chức năng phần mềm trung gian tích hợp trong Express. Nó phân tích các yêu cầu đến với tải trọng được mã hóa url và dựa trên trình phân tích cú pháp cơ thể

Trả về phần mềm trung gian chỉ phân tích các nội dung được mã hóa url và chỉ xem xét các yêu cầu có tiêu đề

fn[res, path, stat]
55 khớp với tùy chọn
fn[res, path, stat]
56. Trình phân tích cú pháp này chỉ chấp nhận mã hóa UTF-8 của nội dung và hỗ trợ lạm phát tự động mã hóa
fn[res, path, stat]
57 và
fn[res, path, stat]
58

Đối tượng

fn[res, path, stat]
59 mới chứa dữ liệu được phân tích cú pháp được điền vào đối tượng
fn[res, path, stat]
60 sau phần mềm trung gian [i. e.
fn[res, path, stat]
61] hoặc một đối tượng trống [
fn[res, path, stat]
62] nếu không có nội dung để phân tích cú pháp,
fn[res, path, stat]
55 không khớp hoặc xảy ra lỗi. Đối tượng này sẽ chứa các cặp khóa-giá trị, trong đó giá trị có thể là một chuỗi hoặc mảng [khi
fn[res, path, stat]
858 là
fn[res, path, stat]
806] hoặc bất kỳ loại nào [khi
fn[res, path, stat]
858 là
fn[res, path, stat]
70]

Vì hình dạng của

fn[res, path, stat]
61 dựa trên đầu vào do người dùng kiểm soát, nên tất cả các thuộc tính và giá trị trong đối tượng này đều không đáng tin cậy và phải được xác thực trước khi tin cậy. Ví dụ:
fn[res, path, stat]
65 có thể bị lỗi theo nhiều cách, chẳng hạn như
fn[res, path, stat]
66 có thể không ở đó hoặc có thể không phải là một chuỗi và
fn[res, path, stat]
67 có thể không phải là một hàm mà thay vào đó là một chuỗi hoặc đầu vào khác của người dùng

Bảng sau mô tả các thuộc tính của đối tượng tùy chọn

fn[res, path, stat]
68

PropertyDescriptionTypeDefault
fn[res, path, stat]
858Tùy chọn này cho phép chọn giữa phân tích cú pháp dữ liệu được mã hóa URL bằng thư viện
fn[res, path, stat]
868 [khi
fn[res, path, stat]
806] hoặc thư viện
fn[res, path, stat]
870 [khi
fn[res, path, stat]
70]. 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 URL được mã hóa. Để biết thêm thông tin, vui lòng xem thư viện qs. Boolean
fn[res, path, stat]
806
fn[res, path, stat]
69 Cho phép hoặc vô hiệu hóa việc xử lý các phần tử [nén] bị xì hơi; . Boolean
fn[res, path, stat]
70
fn[res, path, stat]
71Kiểm soát kích thước cơ thể yêu cầu tối đa. Nếu đây là một số, thì giá trị chỉ định số byte; . Mixed
fn[res, path, stat]
72
fn[res, path, stat]
877Tùy chọn này kiểm soát số lượng tham số tối đa được phép trong dữ liệu được mã hóa URL. Nếu một yêu cầu chứa nhiều tham số hơn giá trị này, sẽ xảy ra lỗi. Số____4878
fn[res, path, stat]
56Số này được sử dụng để xác định loại phương tiện 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ảng các chuỗi hoặc một hàm. Nếu không phải là hàm, tùy chọn
fn[res, path, stat]
56 được chuyển trực tiếp đến thư viện kiểu là và đây có thể là tên tiện ích mở rộng [như
fn[res, path, stat]
881], loại kịch câm [như
fn[res, path, stat]
882] hoặc loại kịch câm có ký tự đại diện [như
fn[res, path, stat]
883]. Nếu là một hàm, tùy chọn
fn[res, path, stat]
56 được gọi là
fn[res, path, stat]
87 và yêu cầu được phân tích cú pháp nếu nó trả về giá trị trung thực. Mixed
fn[res, path, stat]
886
fn[res, path, stat]
89Tùy chọn này, nếu được cung cấp, được gọi là
fn[res, path, stat]
90, trong đó
fn[res, path, stat]
91 là một
fn[res, path, stat]
92 của nội dung yêu cầu thô và
fn[res, path, stat]
93 là 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 đưa ra lỗi. Chức năng____094

Ứng dụng

Đối tượng

fn[res, path, stat]
893 thường biểu thị ứng dụng Express. Tạo nó bằng cách gọi hàm
fn[res, path, stat]
53 cấp cao nhất được xuất bởi mô-đun Express

fn[res, path, stat]
46

Đối tượng

fn[res, path, stat]
893 có các phương thức để

Nó cũng có các cài đặt [thuộc tính] ảnh hưởng đến cách ứng dụng hoạt động;

Của cải

ứng dụng. người dân địa phương

Đối tượng

fn[res, path, stat]
896 có các thuộc tính là các biến cục bộ trong ứng dụng và sẽ có sẵn trong các mẫu được hiển thị với độ phân giải. kết xuất

fn[res, path, stat]
49

Sau khi được đặt, giá trị của các thuộc tính

fn[res, path, stat]
896 sẽ tồn tại trong suốt vòng đời của ứng dụng, trái ngược với res. các thuộc tính local chỉ hợp lệ trong suốt thời gian yêu cầu

Bạn có thể truy cập các biến cục bộ trong các mẫu được hiển thị trong ứng dụng. Điều này hữu ích để cung cấp các hàm trợ giúp cho các mẫu, cũng như dữ liệu cấp ứng dụng. Các biến cục bộ có sẵn trong phần mềm trung gian thông qua

fn[res, path, stat]
898 [xem yêu cầu. ứng dụng]

fn[res, path, stat]
52

ứng dụng. đường leo núi

Thuộc tính

fn[res, path, stat]
899 chứa một hoặc nhiều mẫu đường dẫn mà ứng dụng phụ được gắn trên đó

Ứng dụng phụ là một phiên bản của

fn[res, path, stat]
54 có thể được sử dụng để xử lý yêu cầu tới một tuyến đường

fn[res, path, stat]
55

Nó tương tự như thuộc tính baseUrl của đối tượng

fn[res, path, stat]
901, ngoại trừ
fn[res, path, stat]
902 trả về đường dẫn URL phù hợp, thay vì các mẫu phù hợp

Nếu một ứng dụng con được gắn trên nhiều mẫu đường dẫn, thì

fn[res, path, stat]
899 sẽ trả về danh sách các mẫu được gắn trên đó, như minh họa trong ví dụ sau

fn[res, path, stat]
59

ứng dụng. bộ định tuyến

Phiên bản bộ định tuyến tích hợp sẵn của ứng dụng. Điều này được tạo ra một cách lười biếng, trong lần truy cập đầu tiên

fn[res, path, stat]
60

Bạn có thể thêm các tuyến phương thức HTTP và phần mềm trung gian vào

fn[res, path, stat]
848 giống như một ứng dụng

Để biết thêm thông tin, xem Bộ định tuyến

Sự kiện

ứng dụng. on['mount', callback[parent]]

Sự kiện

fn[res, path, stat]
905 được kích hoạt trên ứng dụng con khi nó được gắn trên ứng dụng mẹ. Ứng dụng gốc được chuyển đến chức năng gọi lại

GHI CHÚ

Các ứng dụng phụ sẽ

  • Không kế thừa giá trị của cài đặt có giá trị mặc định. Bạn phải đặt giá trị trong ứng dụng phụ
  • Kế thừa giá trị của cài đặt không có giá trị mặc định

Để biết chi tiết, hãy xem Cài đặt ứng dụng

fn[res, path, stat]
0

phương pháp

ứng dụng. tất cả [đường dẫn, gọi lại [, gọi lại. ]]

Phương pháp này giống như ứng dụng tiêu chuẩn. METHOD[], ngoại trừ nó phù hợp với tất cả các động từ HTTP

Tranh luận

ArgumentDescriptionDefault____4835Đường dẫn mà chức năng phần mềm trung gian được gọi;
  • Một chuỗi đại diện cho một đường dẫn
  • Một mô hình đường dẫn
  • Một mẫu biểu thức chính quy để khớp với các đường dẫn
  • Một mảng kết hợp của bất kỳ điều nào ở trên
Ví dụ, xem Ví dụ về đường dẫn. '/' [đường dẫn gốc] ____8907Các hàm gọi lại;
  • Chức năng phần mềm trung gian
  • Một loạt các chức năng của phần mềm trung gian [được phân tách bằng dấu phẩy]
  • Một loạt các chức năng phần mềm trung gian
  • Một sự kết hợp của tất cả những điều trên

Bạn có thể cung cấp nhiều chức năng gọi lại hoạt động giống như phần mềm trung gian, ngoại trừ việc các lệnh gọi lại này có thể gọi

fn[res, path, stat]
908 để bỏ qua [các] lệnh gọi lại tuyến đường còn lại. Bạn có thể sử dụng cơ chế này để áp đặt các điều kiện trước cho một tuyến đường, sau đó chuyển quyền kiểm soát cho các tuyến đường tiếp theo nếu không có lý do gì để tiếp tục tuyến đường hiện tại

Khi một hàm gọi lại gây ra lỗi hoặc trả về một lời hứa bị từ chối, `next[err]` sẽ tự động được gọi

Vì bộ định tuyến và ứng dụng triển khai giao diện phần mềm trung gian nên bạn có thể sử dụng chúng như bất kỳ chức năng phần mềm trung gian nào khác

Ví dụ, xem Ví dụ về chức năng gọi lại Middleware

Không có

ví dụ

Cuộc gọi lại sau đây được thực hiện cho các yêu cầu tới

fn[res, path, stat]
909 cho dù sử dụng GET, POST, PUT, DELETE hay bất kỳ phương thức yêu cầu HTTP nào khác

fn[res, path, stat]
1

Phương thức

fn[res, path, stat]
910 rất hữu ích để ánh xạ logic “toàn cầu” cho các tiền tố đường dẫn cụ thể hoặc các kết quả khớp tùy ý. Ví dụ: nếu bạn đặt phần sau ở đầu tất cả các định nghĩa tuyến đường khác, nó yêu cầu tất cả các tuyến đường từ thời điểm đó trở đi yêu cầu xác thực và tự động tải người dùng. Hãy nhớ rằng những cuộc gọi lại này không phải đóng vai trò là điểm cuối.
fn[res, path, stat]
911 có thể thực hiện một nhiệm vụ, sau đó gọi
fn[res, path, stat]
98 để tiếp tục khớp các tuyến tiếp theo

fn[res, path, stat]
2

Hoặc tương đương

fn[res, path, stat]
3

Một ví dụ khác là chức năng “toàn cầu” được liệt kê trắng. Ví dụ này tương tự như ví dụ trên, nhưng nó chỉ giới hạn các đường dẫn bắt đầu bằng “/api”

fn[res, path, stat]
4

ứng dụng. xóa [đường dẫn, gọi lại [, gọi lại. ]]

Định tuyến các yêu cầu XÓA HTTP đến đường dẫn đã chỉ định với các chức năng gọi lại được chỉ định. Để biết thêm thông tin, hãy xem hướng dẫn định tuyến

Tranh luận

ArgumentDescriptionDefault____4835Đường dẫn mà chức năng phần mềm trung gian được gọi;
  • Một chuỗi đại diện cho một đường dẫn
  • Một mô hình đường dẫn
  • Một mẫu biểu thức chính quy để khớp với các đường dẫn
  • Một mảng kết hợp của bất kỳ điều nào ở trên
Ví dụ, xem Ví dụ về đường dẫn. '/' [đường dẫn gốc] ____8907Các hàm gọi lại;
  • Chức năng phần mềm trung gian
  • Một loạt các chức năng của phần mềm trung gian [được phân tách bằng dấu phẩy]
  • Một loạt các chức năng phần mềm trung gian
  • Một sự kết hợp của tất cả những điều trên

Bạn có thể cung cấp nhiều chức năng gọi lại hoạt động giống như phần mềm trung gian, ngoại trừ việc các lệnh gọi lại này có thể gọi

fn[res, path, stat]
908 để bỏ qua [các] lệnh gọi lại tuyến đường còn lại. Bạn có thể sử dụng cơ chế này để áp đặt các điều kiện trước cho một tuyến đường, sau đó chuyển quyền kiểm soát cho các tuyến đường tiếp theo nếu không có lý do gì để tiếp tục tuyến đường hiện tại

Khi một hàm gọi lại gây ra lỗi hoặc trả về một lời hứa bị từ chối, `next[err]` sẽ tự động được gọi

Vì bộ định tuyến và ứng dụng triển khai giao diện phần mềm trung gian nên bạn có thể sử dụng chúng như bất kỳ chức năng phần mềm trung gian nào khác

Ví dụ, xem Ví dụ về chức năng gọi lại Middleware

Không có

Thí dụ

fn[res, path, stat]
5

ứng dụng. vô hiệu hóa [tên]

Đặt cài đặt Boolean

fn[res, path, stat]
916 thành
fn[res, path, stat]
806, trong đó
fn[res, path, stat]
916 là một trong các thuộc tính từ bảng cài đặt ứng dụng. Gọi
fn[res, path, stat]
919 cho thuộc tính Boolean cũng giống như gọi
fn[res, path, stat]
920

Ví dụ

fn[res, path, stat]
6

ứng dụng. bị vô hiệu hóa [tên]

Trả về

fn[res, path, stat]
70 nếu cài đặt Boolean
fn[res, path, stat]
916 bị tắt [
fn[res, path, stat]
806], trong đó
fn[res, path, stat]
916 là một trong các thuộc tính từ bảng cài đặt ứng dụng

fn[res, path, stat]
7

ứng dụng. kích hoạt [tên]

Đặt cài đặt Boolean

fn[res, path, stat]
916 thành
fn[res, path, stat]
70, trong đó
fn[res, path, stat]
916 là một trong các thuộc tính từ bảng cài đặt ứng dụng. Gọi
fn[res, path, stat]
928 cho một thuộc tính Boolean cũng giống như gọi
fn[res, path, stat]
929

fn[res, path, stat]
8

ứng dụng. đã bật [tên]

Trả về

fn[res, path, stat]
70 nếu cài đặt
fn[res, path, stat]
916 được bật [
fn[res, path, stat]
70], trong đó
fn[res, path, stat]
916 là một trong các thuộc tính từ bảng cài đặt ứng dụng

fn[res, path, stat]
9

ứng dụng. động cơ [ext, gọi lại]

Đăng ký công cụ mẫu đã cho

fn[res, path, stat]
907 thành
fn[res, path, stat]
935

Theo mặc định, Express sẽ

fn[res, path, stat]
936 công cụ dựa trên phần mở rộng tệp. Ví dụ: nếu bạn cố gắng kết xuất một “foo. pug”, Express sẽ gọi nội bộ nội dung sau và lưu trữ tệp
fn[res, path, stat]
936 trong các lệnh gọi tiếp theo để tăng hiệu suất

fn[res, path, stat]
80

Sử dụng phương pháp này cho các công cụ không cung cấp

fn[res, path, stat]
938 ngay lập tức hoặc nếu bạn muốn "ánh xạ" một tiện ích mở rộng khác cho công cụ mẫu

Ví dụ: để ánh xạ công cụ mẫu EJS tới “. tập tin html”

fn[res, path, stat]
81

Trong trường hợp này, EJS cung cấp phương thức

fn[res, path, stat]
939 có cùng chữ ký mà Express mong đợi.
fn[res, path, stat]
940, mặc dù lưu ý rằng nó đặt bí danh cho phương pháp này là
fn[res, path, stat]
941 trong nội bộ, vì vậy nếu bạn đang sử dụng “. ejs” mà bạn không cần phải làm gì cả

Một số công cụ mẫu không tuân theo quy ước này. sự hợp nhất. js ánh xạ các công cụ mẫu Node tuân theo quy ước này, vì vậy chúng hoạt động liền mạch với Express

fn[res, path, stat]
82

ứng dụng. lấy [tên]

Trả về giá trị của cài đặt ứng dụng

fn[res, path, stat]
916, trong đó
fn[res, path, stat]
916 là một trong các chuỗi trong bảng cài đặt ứng dụng. Ví dụ

fn[res, path, stat]
83

ứng dụng. get[đường dẫn, gọi lại [, gọi lại. ]]

Định tuyến các yêu cầu HTTP GET đến đường dẫn đã chỉ định với các chức năng gọi lại được chỉ định

Tranh luận

ArgumentDescriptionDefault____4835Đường dẫn mà chức năng phần mềm trung gian được gọi;
  • Một chuỗi đại diện cho một đường dẫn
  • Một mô hình đường dẫn
  • Một mẫu biểu thức chính quy để khớp với các đường dẫn
  • Một mảng kết hợp của bất kỳ điều nào ở trên
Ví dụ, xem Ví dụ về đường dẫn. '/' [đường dẫn gốc] ____8907Các hàm gọi lại;
  • Chức năng phần mềm trung gian
  • Một loạt các chức năng của phần mềm trung gian [được phân tách bằng dấu phẩy]
  • Một loạt các chức năng phần mềm trung gian
  • Một sự kết hợp của tất cả những điều trên

Bạn có thể cung cấp nhiều chức năng gọi lại hoạt động giống như phần mềm trung gian, ngoại trừ việc các lệnh gọi lại này có thể gọi

fn[res, path, stat]
908 để bỏ qua [các] lệnh gọi lại tuyến đường còn lại. Bạn có thể sử dụng cơ chế này để áp đặt các điều kiện trước cho một tuyến đường, sau đó chuyển quyền kiểm soát cho các tuyến đường tiếp theo nếu không có lý do gì để tiếp tục tuyến đường hiện tại

Khi một hàm gọi lại gây ra lỗi hoặc trả về một lời hứa bị từ chối, `next[err]` sẽ tự động được gọi

Vì bộ định tuyến và ứng dụng triển khai giao diện phần mềm trung gian nên bạn có thể sử dụng chúng như bất kỳ chức năng phần mềm trung gian nào khác

Ví dụ, xem Ví dụ về chức năng gọi lại Middleware

Không có

Để biết thêm thông tin, hãy xem hướng dẫn định tuyến

Thí dụ

fn[res, path, stat]
84

ứng dụng. lắng nghe [đường dẫn, [gọi lại]]

Khởi động ổ cắm UNIX và lắng nghe các kết nối trên đường dẫn đã cho. Phương thức này giống hệt với http của Node. Người phục vụ. nghe[]

fn[res, path, stat]
85

ứng dụng. lắng nghe [[cổng [, máy chủ [, tồn đọng]]] [, gọi lại]]

Liên kết và lắng nghe các kết nối trên máy chủ và cổng được chỉ định. Phương thức này giống hệt với http của Node. Người phục vụ. nghe[]

Nếu cổng bị bỏ qua hoặc bằng 0, hệ điều hành sẽ chỉ định một cổng không sử dụng tùy ý, điều này hữu ích cho các trường hợp như tác vụ tự động [kiểm tra, v.v. ]

fn[res, path, stat]
86

fn[res, path, stat]
893 được trả về bởi
fn[res, path, stat]
53 trên thực tế là một JavaScript
fn[res, path, stat]
949, được thiết kế để chuyển đến các máy chủ HTTP của Node dưới dạng lệnh gọi lại để xử lý các yêu cầu. Điều này giúp dễ dàng cung cấp cả phiên bản HTTP và HTTPS của ứng dụng với cùng một cơ sở mã vì ứng dụng không kế thừa từ những phiên bản này [nó chỉ đơn giản là một cuộc gọi lại]

fn[res, path, stat]
87

Phương thức

fn[res, path, stat]
950 trả về một http. Đối tượng máy chủ và [đối với HTTP] là một phương thức thuận tiện cho những điều sau đây

fn[res, path, stat]
88

ứng dụng. PHƯƠNG PHÁP [đường dẫn, gọi lại [, gọi lại. ]]

Định tuyến một yêu cầu HTTP, trong đó METHOD là phương thức HTTP của yêu cầu, chẳng hạn như GET, PUT, POST, v.v., viết thường. Do đó, các phương thức thực tế là

fn[res, path, stat]
951,
fn[res, path, stat]
952,
fn[res, path, stat]
953, v.v. Xem các phương pháp định tuyến bên dưới để biết danh sách đầy đủ

Tranh luận

ArgumentDescriptionDefault____4835Đường dẫn mà chức năng phần mềm trung gian được gọi;
  • Một chuỗi đại diện cho một đường dẫn
  • Một mô hình đường dẫn
  • Một mẫu biểu thức chính quy để khớp với các đường dẫn
  • Một mảng kết hợp của bất kỳ điều nào ở trên
Ví dụ, xem Ví dụ về đường dẫn. '/' [đường dẫn gốc] ____8907Các hàm gọi lại;
  • Chức năng phần mềm trung gian
  • Một loạt các chức năng của phần mềm trung gian [được phân tách bằng dấu phẩy]
  • Một loạt các chức năng phần mềm trung gian
  • Một sự kết hợp của tất cả những điều trên

Bạn có thể cung cấp nhiều chức năng gọi lại hoạt động giống như phần mềm trung gian, ngoại trừ việc các lệnh gọi lại này có thể gọi

fn[res, path, stat]
908 để bỏ qua [các] lệnh gọi lại tuyến đường còn lại. Bạn có thể sử dụng cơ chế này để áp đặt các điều kiện trước cho một tuyến đường, sau đó chuyển quyền kiểm soát cho các tuyến đường tiếp theo nếu không có lý do gì để tiếp tục tuyến đường hiện tại

Khi một hàm gọi lại gây ra lỗi hoặc trả về một lời hứa bị từ chối, `next[err]` sẽ tự động được gọi

Vì bộ định tuyến và ứng dụng triển khai giao diện phần mềm trung gian nên bạn có thể sử dụng chúng như bất kỳ chức năng phần mềm trung gian nào khác

Ví dụ, xem Ví dụ về chức năng gọi lại Middleware

Không có

phương pháp định tuyến

Express hỗ trợ các phương thức định tuyến sau tương ứng với các phương thức HTTP cùng tên

  • fn[res, path, stat]
    
    957
  • fn[res, path, stat]
    
    958
  • fn[res, path, stat]
    
    959
  • fn[res, path, stat]
    
    845
  • fn[res, path, stat]
    
    961
  • fn[res, path, stat]
    
    962
  • fn[res, path, stat]
    
    963
  • fn[res, path, stat]
    
    964
  • fn[res, path, stat]
    
    965
  • fn[res, path, stat]
    
    966
  • fn[res, path, stat]
    
    967
  • fn[res, path, stat]
    
    968
  • fn[res, path, stat]
    
    68
  • fn[res, path, stat]
    
    970
  • fn[res, path, stat]
    
    847
  • fn[res, path, stat]
    
    972
  • fn[res, path, stat]
    
    846
  • fn[res, path, stat]
    
    974
  • fn[res, path, stat]
    
    975
  • fn[res, path, stat]
    
    976
  • fn[res, path, stat]
    
    977
  • fn[res, path, stat]
    
    978
  • fn[res, path, stat]
    
    979

Tài liệu API chỉ có các mục nhập rõ ràng cho các phương thức HTTP phổ biến nhất

fn[res, path, stat]
951,
fn[res, path, stat]
952,
fn[res, path, stat]
953 và
fn[res, path, stat]
983. Tuy nhiên, các phương pháp khác được liệt kê ở trên hoạt động theo cùng một cách

Để định tuyến các phương thức chuyển thành tên biến JavaScript không hợp lệ, hãy sử dụng ký hiệu dấu ngoặc. Ví dụ:

fn[res, path, stat]
984

Hàm

fn[res, path, stat]
951 được tự động gọi cho phương thức HTTP
fn[res, path, stat]
986 ngoài phương thức
fn[res, path, stat]
987 nếu trước đó
fn[res, path, stat]
988 không gọi cho đường dẫn
fn[res, path, stat]
951

Phương thức,

fn[res, path, stat]
910, không bắt nguồn từ bất kỳ phương thức HTTP nào và tải phần mềm trung gian tại đường dẫn đã chỉ định cho tất cả các phương thức yêu cầu HTTP. Để biết thêm thông tin, hãy xem ứng dụng. tất cả các

Để biết thêm thông tin về định tuyến, hãy xem hướng dẫn định tuyến

ứng dụng. param[tên, gọi lại]

Thêm trình kích hoạt gọi lại vào các tham số định tuyến, trong đó

fn[res, path, stat]
916 là tên của tham số hoặc một mảng của chúng và
fn[res, path, stat]
907 là hàm gọi lại. Các tham số của hàm gọi lại là đối tượng yêu cầu, đối tượng phản hồi, phần mềm trung gian tiếp theo, giá trị của tham số và tên của tham số, theo thứ tự đó

Nếu

fn[res, path, stat]
916 là một mảng, trình kích hoạt
fn[res, path, stat]
907 được đăng ký cho từng tham số được khai báo trong đó, theo thứ tự chúng được khai báo. Hơn nữa, đối với mỗi tham số được khai báo ngoại trừ tham số cuối cùng, một cuộc gọi đến
fn[res, path, stat]
995 bên trong hàm gọi lại sẽ gọi hàm gọi lại cho tham số được khai báo tiếp theo. Đối với tham số cuối cùng, một cuộc gọi tới
fn[res, path, stat]
995 sẽ gọi phần mềm trung gian tiếp theo tại chỗ cho tuyến hiện đang được xử lý, giống như nó sẽ xảy ra nếu
fn[res, path, stat]
916 chỉ là một chuỗi

Ví dụ: khi có

fn[res, path, stat]
998 trong đường dẫn tuyến đường, bạn có thể ánh xạ logic tải của người dùng để tự động cung cấp
fn[res, path, stat]
999 cho tuyến đường hoặc thực hiện xác thực trên đầu vào tham số

fn[res, path, stat]
89

Các chức năng gọi lại tham số là cục bộ của bộ định tuyến mà chúng được xác định. Chúng không được kế thừa bởi các ứng dụng hoặc bộ định tuyến được gắn kết. Do đó, các cuộc gọi lại param được xác định trên

fn[res, path, stat]
893 sẽ chỉ được kích hoạt bởi các tham số tuyến đường được xác định trên các tuyến đường
fn[res, path, stat]
893

Tất cả các cuộc gọi lại thông số sẽ được gọi trước bất kỳ trình xử lý nào của bất kỳ tuyến đường nào mà thông số xảy ra và mỗi cuộc gọi lại sẽ chỉ được gọi một lần trong chu kỳ phản hồi yêu cầu, ngay cả khi tham số được khớp trong nhiều tuyến, như được minh họa trong các ví dụ sau

fn[res, path, stat]
90

Trên

fn[res, path, stat]
4602, phần sau được in

fn[res, path, stat]
91
fn[res, path, stat]
92

Trên

fn[res, path, stat]
4603, phần sau được in

fn[res, path, stat]
93

ứng dụng. đường dẫn[]

Trả về đường dẫn chính tắc của ứng dụng, một chuỗi

fn[res, path, stat]
94

Hành vi của phương pháp này có thể trở nên rất phức tạp trong các trường hợp phức tạp của các ứng dụng được gắn kết. thường tốt hơn là sử dụng req. baseUrl để lấy đường dẫn chuẩn của ứng dụng

ứng dụng. bài đăng [đường dẫn, gọi lại [, gọi lại. ]]

Định tuyến các yêu cầu HTTP POST đến đường dẫn đã chỉ định với các chức năng gọi lại được chỉ định. Để biết thêm thông tin, hãy xem hướng dẫn định tuyến

Tranh luận

ArgumentDescriptionDefault____4835Đường dẫn mà chức năng phần mềm trung gian được gọi;
  • Một chuỗi đại diện cho một đường dẫn
  • Một mô hình đường dẫn
  • Một mẫu biểu thức chính quy để khớp với các đường dẫn
  • Một mảng kết hợp của bất kỳ điều nào ở trên
Ví dụ, xem Ví dụ về đường dẫn. '/' [đường dẫn gốc] ____8907Các hàm gọi lại;
  • Chức năng phần mềm trung gian
  • Một loạt các chức năng của phần mềm trung gian [được phân tách bằng dấu phẩy]
  • Một loạt các chức năng phần mềm trung gian
  • Một sự kết hợp của tất cả những điều trên

Bạn có thể cung cấp nhiều chức năng gọi lại hoạt động giống như phần mềm trung gian, ngoại trừ việc các lệnh gọi lại này có thể gọi

fn[res, path, stat]
908 để bỏ qua [các] lệnh gọi lại tuyến đường còn lại. Bạn có thể sử dụng cơ chế này để áp đặt các điều kiện trước cho một tuyến đường, sau đó chuyển quyền kiểm soát cho các tuyến đường tiếp theo nếu không có lý do gì để tiếp tục tuyến đường hiện tại

Khi một hàm gọi lại gây ra lỗi hoặc trả về một lời hứa bị từ chối, `next[err]` sẽ tự động được gọi

Vì bộ định tuyến và ứng dụng triển khai giao diện phần mềm trung gian nên bạn có thể sử dụng chúng như bất kỳ chức năng phần mềm trung gian nào khác

Ví dụ, xem Ví dụ về chức năng gọi lại Middleware

Không có

Thí dụ

fn[res, path, stat]
95

ứng dụng. đặt [đường dẫn, gọi lại [, gọi lại. ]]

Định tuyến các yêu cầu HTTP PUT đến đường dẫn đã chỉ định với các chức năng gọi lại được chỉ định

Tranh luận

ArgumentDescriptionDefault____4835Đường dẫn mà chức năng phần mềm trung gian được gọi;
  • Một chuỗi đại diện cho một đường dẫn
  • Một mô hình đường dẫn
  • Một mẫu biểu thức chính quy để khớp với các đường dẫn
  • Một mảng kết hợp của bất kỳ điều nào ở trên
Ví dụ, xem Ví dụ về đường dẫn. '/' [đường dẫn gốc] ____8907Các hàm gọi lại;
  • Chức năng phần mềm trung gian
  • Một loạt các chức năng của phần mềm trung gian [được phân tách bằng dấu phẩy]
  • Một loạt các chức năng phần mềm trung gian
  • Một sự kết hợp của tất cả những điều trên

Bạn có thể cung cấp nhiều chức năng gọi lại hoạt động giống như phần mềm trung gian, ngoại trừ việc các lệnh gọi lại này có thể gọi

fn[res, path, stat]
908 để bỏ qua [các] lệnh gọi lại tuyến đường còn lại. Bạn có thể sử dụng cơ chế này để áp đặt các điều kiện trước cho một tuyến đường, sau đó chuyển quyền kiểm soát cho các tuyến đường tiếp theo nếu không có lý do gì để tiếp tục tuyến đường hiện tại

Khi một hàm gọi lại gây ra lỗi hoặc trả về một lời hứa bị từ chối, `next[err]` sẽ tự động được gọi

Vì bộ định tuyến và ứng dụng triển khai giao diện phần mềm trung gian nên bạn có thể sử dụng chúng như bất kỳ chức năng phần mềm trung gian nào khác

Ví dụ, xem Ví dụ về chức năng gọi lại Middleware

Không có

Thí dụ

fn[res, path, stat]
96

ứng dụng. kết xuất [xem, [địa phương], gọi lại]

Trả về HTML được hiển thị của chế độ xem qua hàm

fn[res, path, stat]
907. Nó chấp nhận một tham số tùy chọn là một đối tượng chứa các biến cục bộ cho dạng xem. Nó giống như độ phân giải. render[], ngoại trừ nó không thể tự gửi chế độ xem được hiển thị tới máy khách

Hãy nghĩ về

fn[res, path, stat]
4611 như một chức năng tiện ích để tạo các chuỗi xem được hiển thị. Nội bộ
fn[res, path, stat]
4612 sử dụng
fn[res, path, stat]
4611 để hiển thị chế độ xem

Biến cục bộ

fn[res, path, stat]
4614 được dành riêng để bật chế độ xem bộ đệm. Đặt nó thành
fn[res, path, stat]
70, nếu bạn muốn xem bộ đệm trong quá trình phát triển;

fn[res, path, stat]
97

ứng dụng. lộ trình [đường đi]

Trả về một phiên bản của một tuyến đường, sau đó bạn có thể sử dụng tuyến đường này để xử lý các động từ HTTP bằng phần mềm trung gian tùy chọn. Sử dụng

fn[res, path, stat]
4616 để tránh tên tuyến đường trùng lặp [và do đó là lỗi đánh máy]

fn[res, path, stat]
98

ứng dụng. đặt [tên, giá trị]

Chỉ định cài đặt

fn[res, path, stat]
916 thành
fn[res, path, stat]
4618. Bạn có thể lưu trữ bất kỳ giá trị nào bạn muốn, nhưng một số tên nhất định có thể được sử dụng để định cấu hình hành vi của máy chủ. Những tên đặc biệt này được liệt kê trong bảng cài đặt ứng dụng

Gọi

fn[res, path, stat]
928 cho một thuộc tính Boolean cũng giống như gọi
fn[res, path, stat]
929. Tương tự, gọi
fn[res, path, stat]
919 cho một thuộc tính Boolean cũng giống như gọi
fn[res, path, stat]
920

Truy xuất giá trị của cài đặt với

fn[res, path, stat]
951

fn[res, path, stat]
99

Cài đặt ứng dụng

Bảng sau liệt kê các cài đặt ứng dụng

Lưu ý rằng các ứng dụng phụ sẽ

  • Không kế thừa giá trị của cài đặt có giá trị mặc định. Bạn phải đặt giá trị trong ứng dụng phụ
  • Kế thừa giá trị của các cài đặt không có giá trị mặc định;

ngoại lệ. Các ứng dụng phụ sẽ kế thừa giá trị của

fn[res, path, stat]
4624 mặc dù nó có giá trị mặc định [để tương thích ngược];

Loại thuộc tínhMô tảMặc định

fn[res, path, stat]
4627

Boolean

Bật phân biệt chữ hoa chữ thường. Khi được bật, "/Foo" và "/foo" là các tuyến khác nhau. Khi bị tắt, "/Foo" và "/foo" được xử lý như nhau

GHI CHÚ. Các ứng dụng phụ sẽ kế thừa giá trị của cài đặt này

N/A [không xác định]

fn[res, path, stat]
4628

Chế độ môi trường chuỗi. Đảm bảo đặt thành "sản xuất" trong môi trường sản xuất; . hiệu suất và độ tin cậy

fn[res, path, stat]
4629 [biến môi trường
fn[res, path, stat]
4626] hoặc “phát triển” nếu không đặt
fn[res, path, stat]
4626

fn[res, path, stat]
801

đa dạng

Đặt tiêu đề phản hồi ETag. Để biết các giá trị có thể, hãy xem bảng tùy chọn

fn[res, path, stat]
801

Tìm hiểu thêm về tiêu đề HTTP ETag

fn[res, path, stat]
4634

fn[res, path, stat]
4635

StringChỉ định tên gọi lại JSONP mặc định

"gọi lại"

fn[res, path, stat]
4636

Boolean

Cho phép thoát các phản hồi JSON từ API

fn[res, path, stat]
4637,
fn[res, path, stat]
4638 và
fn[res, path, stat]
4639. Điều này sẽ thoát khỏi các ký tự
fn[res, path, stat]
4640,
fn[res, path, stat]
4641 và
fn[res, path, stat]
4642 dưới dạng các chuỗi thoát Unicode trong JSON. Mục đích của việc này là để hỗ trợ giảm thiểu một số kiểu tấn công XSS dai dẳng khi khách hàng đánh hơi phản hồi cho HTML

GHI CHÚ. Các ứng dụng phụ sẽ kế thừa giá trị của cài đặt này

N/A [không xác định]

fn[res, path, stat]
4643

Đa dạngĐối số 'thay thế' được sử dụng bởi `JSON. xâu chuỗi`

GHI CHÚ. Các ứng dụng phụ sẽ kế thừa giá trị của cài đặt này

N/A [không xác định]

fn[res, path, stat]
4644

Đa dạngĐối số 'không gian' được sử dụng bởi `JSON. xâu chuỗi`. Điều này thường được đặt thành số khoảng trắng sẽ sử dụng để thụt lề JSON

GHI CHÚ. Các ứng dụng phụ sẽ kế thừa giá trị của cài đặt này

N/A [không xác định]

fn[res, path, stat]
4645

đa dạng

Vô hiệu hóa phân tích cú pháp truy vấn bằng cách đặt giá trị thành

fn[res, path, stat]
806 hoặc đặt trình phân tích cú pháp truy vấn để sử dụng "đơn giản" hoặc "mở rộng" hoặc chức năng phân tích cú pháp chuỗi truy vấn tùy chỉnh

Trình phân tích cú pháp truy vấn đơn giản dựa trên trình phân tích cú pháp truy vấn gốc của Node, chuỗi truy vấn

Trình phân tích cú pháp truy vấn mở rộng dựa trên qs

Hàm phân tích chuỗi truy vấn tùy chỉnh sẽ nhận chuỗi truy vấn hoàn chỉnh và phải trả về một đối tượng gồm các khóa truy vấn và giá trị của chúng

"mở rộng"

fn[res, path, stat]
4647

Boolean

Kích hoạt định tuyến nghiêm ngặt. Khi được bật, bộ định tuyến coi "/foo" và "/foo/" là khác nhau. Mặt khác, bộ định tuyến coi "/foo" và "/foo/" giống nhau

GHI CHÚ. Các ứng dụng phụ sẽ kế thừa giá trị của cài đặt này

N/A [không xác định]

fn[res, path, stat]
4648

Số Số phần được phân tách bằng dấu chấm của máy chủ cần xóa để truy cập tên miền phụ. 2

fn[res, path, stat]
4624

đa dạng

Cho biết ứng dụng đứng sau proxy mặt trước và sử dụng tiêu đề

fn[res, path, stat]
4650 để xác định kết nối và địa chỉ IP của ứng dụng khách. GHI CHÚ. Tiêu đề
fn[res, path, stat]
4650 dễ bị giả mạo và địa chỉ IP được phát hiện là không đáng tin cậy

Khi được bật, Express sẽ cố gắng xác định địa chỉ IP của máy khách được kết nối thông qua proxy mặt trước hoặc một loạt proxy. `yêu cầu. ips`, sau đó chứa một mảng địa chỉ IP mà máy khách được kết nối thông qua. Để bật tính năng này, hãy sử dụng các giá trị được mô tả trong bảng tùy chọn proxy tin cậy

Cài đặt `trust proxy` được triển khai bằng gói proxy-addr. Để biết thêm thông tin, hãy xem tài liệu của nó

GHI CHÚ. Các ứng dụng phụ sẽ kế thừa giá trị của cài đặt này, mặc dù cài đặt này có giá trị mặc định

fn[res, path, stat]
806 [đã tắt]

fn[res, path, stat]
4653

String or ArrayA directory or an array of directories for the application's views. If an array, the views are looked up in the order they occur in the array

fn[res, path, stat]
4654

fn[res, path, stat]
4625

Boolean

Enables view template compilation caching

NOTE. Sub-apps will not inherit the value of this setting in production [when `NODE_ENV` is "production"]

fn[res, path, stat]
70 in production, otherwise undefined

fn[res, path, stat]
4657

StringThe default engine extension to use when omitted

GHI CHÚ. Các ứng dụng phụ sẽ kế thừa giá trị của cài đặt này

N/A [không xác định]

fn[res, path, stat]
4658

BooleanEnables the "X-Powered-By. Express" tiêu đề HTTP

fn[res, path, stat]
70

Options for `trust proxy` setting

Read Express behind proxies for more information

TypeValueBoolean

If

fn[res, path, stat]
70, the client’s IP address is understood as the left-most entry in the
fn[res, path, stat]
4650 header

If

fn[res, path, stat]
806, the app is understood as directly facing the Internet and the client’s IP address is derived from
fn[res, path, stat]
4663. This is the default setting

String
String containing comma-separated values
Array of strings

An IP address, subnet, or an array of IP addresses, and subnets to trust. Pre-configured subnet names are

  • loopback -
    fn[res, path, stat]
    
    4664,
    fn[res, path, stat]
    
    4665
  • linklocal -
    fn[res, path, stat]
    
    4666,
    fn[res, path, stat]
    
    4667
  • uniquelocal -
    fn[res, path, stat]
    
    4668,
    fn[res, path, stat]
    
    4669,
    fn[res, path, stat]
    
    4670,
    fn[res, path, stat]
    
    4671

Set IP addresses in any of the following ways

Specify a single subnet

fn[res, path, stat]
460

Specify a subnet and an address

fn[res, path, stat]
461

Specify multiple subnets as CSV

fn[res, path, stat]
462

Specify multiple subnets as an array

fn[res, path, stat]
463

Khi được chỉ định, các địa chỉ IP hoặc mạng con sẽ bị loại trừ khỏi quá trình xác định địa chỉ và địa chỉ IP không đáng tin cậy gần máy chủ ứng dụng nhất được xác định là địa chỉ IP của máy khách

Number

Trust the nth hop from the front-facing proxy server as the client

Hàm số

Custom trust implementation. Use this only if you know what you are doing

fn[res, path, stat]
464Các tùy chọn cho cài đặt `etag`

NOTE. These settings apply only to dynamic files, not static files. đường cao tốc. phần mềm trung gian tĩnh bỏ qua các cài đặt này

The ETag functionality is implemented using the etag package. For more information, see its documentation

TypeValueBoolean

fn[res, path, stat]
70 enables weak ETag. This is the default setting.
fn[res, path, stat]
806 disables ETag altogether.

StringIf "strong", enables strong ETag.
If "weak", enables weak ETag. Function

Custom ETag function implementation. Use this only if you know what you are doing

fn[res, path, stat]
465

app. use[[path,] callback [, callback. ]]

Gắn kết chức năng phần mềm trung gian được chỉ định hoặc các chức năng tại đường dẫn đã chỉ định. chức năng phần mềm trung gian được thực thi khi cơ sở của đường dẫn được yêu cầu khớp với

fn[res, path, stat]
835

Tranh luận

ArgumentDescriptionDefault____4835Đường dẫn mà chức năng phần mềm trung gian được gọi;
  • Một chuỗi đại diện cho một đường dẫn
  • Một mô hình đường dẫn
  • Một mẫu biểu thức chính quy để khớp với các đường dẫn
  • Một mảng kết hợp của bất kỳ điều nào ở trên
Ví dụ, xem Ví dụ về đường dẫn. '/' [đường dẫn gốc] ____8907Các hàm gọi lại;
  • Chức năng phần mềm trung gian
  • Một loạt các chức năng của phần mềm trung gian [được phân tách bằng dấu phẩy]
  • Một loạt các chức năng phần mềm trung gian
  • Một sự kết hợp của tất cả những điều trên

Bạn có thể cung cấp nhiều chức năng gọi lại hoạt động giống như phần mềm trung gian, ngoại trừ việc các lệnh gọi lại này có thể gọi

fn[res, path, stat]
908 để bỏ qua [các] lệnh gọi lại tuyến đường còn lại. Bạn có thể sử dụng cơ chế này để áp đặt các điều kiện trước cho một tuyến đường, sau đó chuyển quyền kiểm soát cho các tuyến đường tiếp theo nếu không có lý do gì để tiếp tục tuyến đường hiện tại

Khi một hàm gọi lại gây ra lỗi hoặc trả về một lời hứa bị từ chối, `next[err]` sẽ tự động được gọi

Vì bộ định tuyến và ứng dụng triển khai giao diện phần mềm trung gian nên bạn có thể sử dụng chúng như bất kỳ chức năng phần mềm trung gian nào khác

Ví dụ, xem Ví dụ về chức năng gọi lại Middleware

Không có

Description

A route will match any path that follows its path immediately with a “

fn[res, path, stat]
4678”. For example.
fn[res, path, stat]
4679 will match “/apple”, “/apple/images”, “/apple/images/news”, and so on

Since

fn[res, path, stat]
835 defaults to “/”, middleware mounted without a path will be executed for every request to the app.
For example, this middleware function will be executed for every request to the app.

fn[res, path, stat]
466

GHI CHÚ

Các ứng dụng phụ sẽ

  • Không kế thừa giá trị của cài đặt có giá trị mặc định. Bạn phải đặt giá trị trong ứng dụng phụ
  • Kế thừa giá trị của cài đặt không có giá trị mặc định

Để biết chi tiết, hãy xem Cài đặt ứng dụng

Middleware functions are executed sequentially, therefore the order of middleware inclusion is important

fn[res, path, stat]
467

Error-handling middleware

Error-handling middleware always takes four arguments. You must provide four arguments to identify it as an error-handling middleware function. Even if you don’t need to use the

fn[res, path, stat]
995 object, you must specify it to maintain the signature. Otherwise, the
fn[res, path, stat]
995 object will be interpreted as regular middleware and will fail to handle errors. For details about error-handling middleware, see. Error handling

Define error-handling middleware functions in the same way as other middleware functions, except with four arguments instead of three, specifically with the signature

fn[res, path, stat]
4683]

fn[res, path, stat]
468

Path examples

The following table provides some simple examples of valid

fn[res, path, stat]
835 values for mounting middleware

TypeExamplePath

This will match paths starting with

fn[res, path, stat]
4685

fn[res, path, stat]
469Path Pattern

This will match paths starting with

fn[res, path, stat]
4685 and
fn[res, path, stat]
4687

fn[res, path, stat]
490Regular Expression

This will match paths starting with

fn[res, path, stat]
4688 and
fn[res, path, stat]
4689

fn[res, path, stat]
491Array

This will match paths starting with

fn[res, path, stat]
4685,
fn[res, path, stat]
4691,
fn[res, path, stat]
4692, and
fn[res, path, stat]
4693

fn[res, path, stat]
492

Middleware callback function examples

Bảng sau đây cung cấp một số ví dụ đơn giản về các hàm phần mềm trung gian có thể được sử dụng làm đối số

fn[res, path, stat]
907 cho
fn[res, path, stat]
4695,
fn[res, path, stat]
4696 và
fn[res, path, stat]
910. Even though the examples are for
fn[res, path, stat]
4695, they are also valid for
fn[res, path, stat]
4695,
fn[res, path, stat]
4696, and
fn[res, path, stat]
910

UsageExampleSingle Middleware

You can define and mount a middleware function locally

fn[res, path, stat]
493

Bộ định tuyến là phần mềm trung gian hợp lệ

fn[res, path, stat]
494

An Express app is valid middleware

fn[res, path, stat]
495Series of Middleware

You can specify more than one middleware function at the same mount path

fn[res, path, stat]
496Mảng

Use an array to group middleware logically

fn[res, path, stat]
497Combination

Bạn có thể kết hợp tất cả các cách cài đặt phần mềm trung gian ở trên

fn[res, path, stat]
498

Sau đây là một số ví dụ về việc sử dụng express. phần mềm trung gian tĩnh trong ứng dụng Express

Cung cấp nội dung tĩnh cho ứng dụng từ thư mục “công khai” trong thư mục ứng dụng

fn[res, path, stat]
499

Gắn phần mềm trung gian tại “/static” để chỉ phục vụ nội dung tĩnh khi đường dẫn yêu cầu của chúng có tiền tố là “/static”

fn[res, path, stat]
520

Tắt ghi nhật ký cho các yêu cầu nội dung tĩnh bằng cách tải phần mềm trung gian ghi nhật ký sau phần mềm trung gian tĩnh

fn[res, path, stat]
521

Phục vụ các tệp tĩnh từ nhiều thư mục, nhưng ưu tiên cho “. /public” so với những cái khác

fn[res, path, stat]
522

Lời yêu cầu

Đối tượng

fn[res, path, stat]
901 đại diện cho yêu cầu HTTP và có các thuộc tính cho chuỗi truy vấn yêu cầu, tham số, nội dung, tiêu đề HTTP, v.v. Trong tài liệu này và theo quy ước, đối tượng luôn được gọi là
fn[res, path, stat]
901 [và phản hồi HTTP là
fn[res, path, stat]
834] nhưng tên thực của nó được xác định bởi các tham số cho hàm gọi lại mà bạn đang làm việc

Ví dụ

fn[res, path, stat]
523

But you could just as well have

fn[res, path, stat]
524

The

fn[res, path, stat]
901 object is an enhanced version of Node’s own request object and supports all built-in fields and methods

Của cải

req. app

Thuộc tính này giữ một tham chiếu đến phiên bản của ứng dụng Express đang sử dụng phần mềm trung gian

If you follow the pattern in which you create a module that just exports a middleware function and

fn[res, path, stat]
936 it in your main file, then the middleware can access the Express instance via
fn[res, path, stat]
4907

Ví dụ

fn[res, path, stat]
525
fn[res, path, stat]
526

req. baseUrl

The URL path on which a router instance was mounted

The

fn[res, path, stat]
902 property is similar to the mountpath property of the
fn[res, path, stat]
893 object, except
fn[res, path, stat]
899 returns the matched path pattern[s]

Ví dụ

fn[res, path, stat]
527

Even if you use a path pattern or a set of path patterns to load the router, the

fn[res, path, stat]
4911 property returns the matched string, not the pattern[s]. In the following example, the
fn[res, path, stat]
4912 router is loaded on two path patterns

fn[res, path, stat]
528

When a request is made to

fn[res, path, stat]
4913,
fn[res, path, stat]
902 is “/greet”. When a request is made to
fn[res, path, stat]
4915,
fn[res, path, stat]
902 is “/hello”

req. body

Contains key-value pairs of data submitted in the request body. By default, it is

fn[res, path, stat]
94, and is populated when you use body-parsing middleware such as body-parser and multer

Vì hình dạng của

fn[res, path, stat]
61 dựa trên đầu vào do người dùng kiểm soát, nên tất cả các thuộc tính và giá trị trong đối tượng này đều không đáng tin cậy và phải được xác thực trước khi tin cậy. Ví dụ:
fn[res, path, stat]
65 có thể bị lỗi theo nhiều cách, chẳng hạn như
fn[res, path, stat]
66 có thể không ở đó hoặc có thể không phải là một chuỗi và
fn[res, path, stat]
67 có thể không phải là một hàm mà thay vào đó là một chuỗi hoặc đầu vào khác của người dùng

The following example shows how to use body-parsing middleware to populate

fn[res, path, stat]
61

fn[res, path, stat]
529

req. cookies

When using cookie-parser middleware, this property is an object that contains cookies sent by the request. If the request contains no cookies, it defaults to

fn[res, path, stat]
62

fn[res, path, stat]
550

If the cookie has been signed, you have to use req. signedCookies

For more information, issues, or concerns, see cookie-parser

req. fresh

When the response is still “fresh” in the client’s cache

fn[res, path, stat]
70 is returned, otherwise
fn[res, path, stat]
806 is returned to indicate that the client cache is now stale and the full response should be sent

When a client sends the

fn[res, path, stat]
4926 request header to indicate an end-to-end reload request, this module will return
fn[res, path, stat]
806 to make handling these requests transparent

Further details for how cache validation works can be found in the HTTP/1. 1 Caching Specification

fn[res, path, stat]
551

req. host

Contains the host derived from the

fn[res, path, stat]
4928 HTTP header

When the

fn[res, path, stat]
4624 setting does not evaluate to
fn[res, path, stat]
806, this property will instead get the value from the
fn[res, path, stat]
4931 header field. This header can be set by the client or by the proxy

If there is more than one

fn[res, path, stat]
4931 header in the request, the value of the first header is used. This includes a single header with comma-separated values, in which the first value is used

fn[res, path, stat]
552

req. hostname

Contains the hostname derived from the

fn[res, path, stat]
4928 HTTP header

When the

fn[res, path, stat]
4624 setting does not evaluate to
fn[res, path, stat]
806, this property will instead get the value from the
fn[res, path, stat]
4931 header field. This header can be set by the client or by the proxy

If there is more than one

fn[res, path, stat]
4931 header in the request, the value of the first header is used. This includes a single header with comma-separated values, in which the first value is used

Prior to Express v4. 17. 0, the

fn[res, path, stat]
4931 could not contain multiple values or be present more than once

fn[res, path, stat]
553

req. ip

Contains the remote IP address of the request

When the

fn[res, path, stat]
4624 setting does not evaluate to
fn[res, path, stat]
806, the value of this property is derived from the left-most entry in the
fn[res, path, stat]
4941 header. This header can be set by the client or by the proxy

fn[res, path, stat]
554

req. ips

When the

fn[res, path, stat]
4624 setting does not evaluate to
fn[res, path, stat]
806, this property contains an array of IP addresses specified in the
fn[res, path, stat]
4941 request header. Otherwise, it contains an empty array. This header can be set by the client or by the proxy

For example, if

fn[res, path, stat]
4941 is
fn[res, path, stat]
4946,
fn[res, path, stat]
4947 would be
fn[res, path, stat]
4948, where
fn[res, path, stat]
4949 is the furthest downstream

req. method

Contains a string corresponding to the HTTP method of the request.

fn[res, path, stat]
987,
fn[res, path, stat]
4951,
fn[res, path, stat]
4952, and so on

req. originalUrl

fn[res, path, stat]
96 is not a native Express property, it is inherited from Node’s http module

This property is much like

fn[res, path, stat]
96; however, it retains the original request URL, allowing you to rewrite
fn[res, path, stat]
96 freely for internal routing purposes. For example, the “mounting” feature of app. use[] will rewrite
fn[res, path, stat]
96 to strip the mount point

fn[res, path, stat]
555

fn[res, path, stat]
4957 is available both in middleware and router objects, and is a combination of
fn[res, path, stat]
902 and
fn[res, path, stat]
96. Consider following example

fn[res, path, stat]
556

req. params

This property is an object containing properties mapped to the named route “parameters”. For example, if you have the route

fn[res, path, stat]
4960, then the “name” property is available as
fn[res, path, stat]
4961. This object defaults to
fn[res, path, stat]
62

fn[res, path, stat]
557

When you use a regular expression for the route definition, capture groups are provided in the array using

fn[res, path, stat]
4963, where
fn[res, path, stat]
4964 is the nth capture group. This rule is applied to unnamed wild card matches with string routes such as
fn[res, path, stat]
4965

fn[res, path, stat]
558

If you need to make changes to a key in

fn[res, path, stat]
842, use the app. param handler. Changes are applicable only to parameters already defined in the route path

Any changes made to the

fn[res, path, stat]
842 object in a middleware or route handler will be reset

NOTE. Express automatically decodes the values in

fn[res, path, stat]
842 [using
fn[res, path, stat]
4969]

req. path

Contains the path part of the request URL

fn[res, path, stat]
559

When called from a middleware, the mount point is not included in

fn[res, path, stat]
4970. See app. use[] for more details

req. protocol

Chứa chuỗi giao thức yêu cầu. either

fn[res, path, stat]
4971 or [for TLS requests]
fn[res, path, stat]
4972

When the

fn[res, path, stat]
4624 setting does not evaluate to
fn[res, path, stat]
806, this property will use the value of the
fn[res, path, stat]
4975 header field if present. This header can be set by the client or by the proxy

fn[res, path, stat]
590

req. query

This property is an object containing a property for each query string parameter in the route. Khi trình phân tích cú pháp truy vấn được đặt thành vô hiệu hóa, nó là một đối tượng trống

fn[res, path, stat]
62, nếu không, nó là kết quả của trình phân tích cú pháp truy vấn đã định cấu hình

As

fn[res, path, stat]
4977’s shape is based on user-controlled input, all properties and values in this object are untrusted and should be validated before trusting. For example,
fn[res, path, stat]
4978 may fail in multiple ways, for example
fn[res, path, stat]
66 may not be there or may not be a string, and
fn[res, path, stat]
67 may not be a function and instead a string or other user-input

The value of this property can be configured with the query parser application setting to work how your application needs it. Trình phân tích cú pháp chuỗi truy vấn rất phổ biến là mô-đun

fn[res, path, stat]
870 và mô-đun này được sử dụng theo mặc định. The
fn[res, path, stat]
870 module is very configurable with many settings, and it may be desirable to use different settings than the default to populate
fn[res, path, stat]
4977

fn[res, path, stat]
591

Check out the query parser application setting documentation for other customization options

req. res

This property holds a reference to the response object that relates to this request object

req. route

Contains the currently-matched route, a string. For example

fn[res, path, stat]
592

Example output from the previous snippet

fn[res, path, stat]
593

req. secure

A Boolean property that is true if a TLS connection is established. Equivalent to the following

fn[res, path, stat]
594

req. signedCookies

When using cookie-parser middleware, this property contains signed cookies sent by the request, unsigned and ready for use. Signed cookies reside in a different object to show developer intent; otherwise, a malicious attack could be placed on

fn[res, path, stat]
4984 values [which are easy to spoof]. Note that signing a cookie does not make it “hidden” or encrypted; but simply prevents tampering [because the secret used to sign is private]

If no signed cookies are sent, the property defaults to

fn[res, path, stat]
62

fn[res, path, stat]
595

For more information, issues, or concerns, see cookie-parser

req. stale

Indicates whether the request is “stale,” and is the opposite of

fn[res, path, stat]
4986. For more information, see req. fresh

fn[res, path, stat]
596

req. subdomains

An array of subdomains in the domain name of the request

fn[res, path, stat]
597

The application property

fn[res, path, stat]
4648, which defaults to 2, is used for determining the beginning of the subdomain segments. To change this behavior, change its value using app. set

req. xhr

A Boolean property that is

fn[res, path, stat]
70 if the request’s
fn[res, path, stat]
4989 header field is “XMLHttpRequest”, indicating that the request was issued by a client library such as jQuery

fn[res, path, stat]
598

phương pháp

req. accepts[types]

Checks if the specified content types are acceptable, based on the request’s

fn[res, path, stat]
4990 HTTP header field. The method returns the best match, or if none of the specified content types is acceptable, returns
fn[res, path, stat]
806 [in which case, the application should respond with
fn[res, path, stat]
4992]

The

fn[res, path, stat]
56 value may be a single MIME type string [such as “application/json”], an extension name such as “json”, a comma-delimited list, or an array. For a list or array, the method returns the best match [if any]

fn[res, path, stat]
599

For more information, or if you have issues or concerns, see accepts

req. acceptsCharsets[charset [, . ]]

Returns the first accepted charset of the specified character sets, based on the request’s

fn[res, path, stat]
4994 HTTP header field. If none of the specified charsets is accepted, returns
fn[res, path, stat]
806

For more information, or if you have issues or concerns, see accepts

req. acceptEncodings[encoding [,. ]]

Returns the first accepted encoding of the specified encodings, based on the request’s

fn[res, path, stat]
4996 HTTP header field. If none of the specified encodings is accepted, returns
fn[res, path, stat]
806

For more information, or if you have issues or concerns, see accepts

req. acceptsLanguages[lang [, . ]]

Returns the first accepted language of the specified languages, based on the request’s

fn[res, path, stat]
4998 HTTP header field. If none of the specified languages is accepted, returns
fn[res, path, stat]
806

For more information, or if you have issues or concerns, see accepts

req. get[field]

Returns the specified HTTP request header field [case-insensitive match]. The

fn[res, path, stat]
5200 and
fn[res, path, stat]
5201 fields are interchangeable

fn[res, path, stat]
600

Aliased as

fn[res, path, stat]
5202

req. is[type]

Returns the matching content type if the incoming request’s “Content-Type” HTTP header field matches the MIME type specified by the

fn[res, path, stat]
56 parameter. If the request has no body, returns
fn[res, path, stat]
76. Returns
fn[res, path, stat]
806 otherwise

fn[res, path, stat]
601

For more information, or if you have issues or concerns, see type-is

req. range[size[, options]]

fn[res, path, stat]
5206 header parser

The

fn[res, path, stat]
5207 parameter is the maximum size of the resource

The

fn[res, path, stat]
68 parameter is an object that can have the following properties

PropertyTypeDescription
fn[res, path, stat]
5209BooleanSpecify if overlapping & adjacent ranges should be combined, defaults to
fn[res, path, stat]
806. When
fn[res, path, stat]
70, ranges will be combined and returned as if they were specified that way in the header

An array of ranges will be returned or negative numbers indicating an error parsing

  • fn[res, path, stat]
    
    5212 signals a malformed header string
  • fn[res, path, stat]
    
    5213 signals an unsatisfiable range
fn[res, path, stat]
602

Response

The

fn[res, path, stat]
834 object represents the HTTP response that an Express app sends when it gets an HTTP request

In this documentation and by convention, the object is always referred to as

fn[res, path, stat]
834 [and the HTTP request is
fn[res, path, stat]
901] but its actual name is determined by the parameters to the callback function in which you’re working

Ví dụ

fn[res, path, stat]
523

But you could just as well have

fn[res, path, stat]
524

The

fn[res, path, stat]
834 object is an enhanced version of Node’s own response object and supports all built-in fields and methods

Của cải

res. app

Thuộc tính này giữ một tham chiếu đến phiên bản của ứng dụng Express đang sử dụng phần mềm trung gian

fn[res, path, stat]
5218 is identical to the req. app property in the request object

Boolean property that indicates if the app sent HTTP headers for the response

fn[res, path, stat]
605

res. locals

Use this property to set variables accessible in templates rendered with res. render. The variables set on

fn[res, path, stat]
5219 are available within a single request-response cycle, and will not be shared between requests

In order to keep local variables for use in template rendering between requests, use app. locals instead

This property is useful for exposing request-level information such as the request path name, authenticated user, user settings, and so on to templates rendered within the application

fn[res, path, stat]
606

res. req

This property holds a reference to the request object that relates to this response object

phương pháp

res. append[field [, value]]

fn[res, path, stat]
5220 is supported by Express v4. 11. 0+

Appends the specified

fn[res, path, stat]
4618 to the HTTP response header
fn[res, path, stat]
5222. If the header is not already set, it creates the header with the specified value. The
fn[res, path, stat]
4618 parameter can be a string or an array

Ghi chú. calling

fn[res, path, stat]
5224 after
fn[res, path, stat]
5220 will reset the previously-set header value

fn[res, path, stat]
607

res. attachment[[filename]]

Đặt trường tiêu đề phản hồi HTTP

fn[res, path, stat]
5226 thành “tệp đính kèm”. If a
fn[res, path, stat]
5227 is given, then it sets the Content-Type based on the extension name via
fn[res, path, stat]
5228, and sets the
fn[res, path, stat]
5226 “filename=” parameter

fn[res, path, stat]
608

res. cookie[name, value [, options]]

Sets cookie

fn[res, path, stat]
916 to
fn[res, path, stat]
4618. The
fn[res, path, stat]
4618 parameter may be a string or object converted to JSON

The

fn[res, path, stat]
68 parameter is an object that can have the following properties

PropertyTypeDescription
fn[res, path, stat]
5234StringDomain name for the cookie. Defaults to the domain name of the app.
fn[res, path, stat]
5235FunctionA synchronous function used for cookie value encoding. Defaults to
fn[res, path, stat]
5236.
fn[res, path, stat]
5237DateExpiry date of the cookie in GMT. If not specified or set to 0, creates a session cookie.
fn[res, path, stat]
5238BooleanFlags the cookie to be accessible only by the web server.
fn[res, path, stat]
812NumberConvenient option for setting the expiry time relative to the current time in milliseconds.
fn[res, path, stat]
835StringPath for the cookie. Defaults to “/”.
fn[res, path, stat]
5241BooleanMarks the cookie to be used with HTTPS only.
fn[res, path, stat]
5242BooleanIndicates if the cookie should be signed.
fn[res, path, stat]
5243Boolean or StringValue of the “SameSite” Set-Cookie attribute. More information at https. //tools. ietf. org/html/draft-ietf-httpbis-cookie-same-site-00#section-4. 1. 1

All

fn[res, path, stat]
5244 does is set the HTTP
fn[res, path, stat]
5245 header with the options provided. Any option not specified defaults to the value stated in RFC 6265

Ví dụ

fn[res, path, stat]
609

The

fn[res, path, stat]
5235 option allows you to choose the function used for cookie value encoding. Does not support asynchronous functions

Example use case. You need to set a domain-wide cookie for another site in your organization. This other site [not under your administrative control] does not use URI-encoded cookie values

fn[res, path, stat]
00

The

fn[res, path, stat]
812 option is a convenience option for setting “expires” relative to the current time in milliseconds. The following is equivalent to the second example above

fn[res, path, stat]
01

You can pass an object as the

fn[res, path, stat]
4618 parameter; it is then serialized as JSON and parsed by
fn[res, path, stat]
5249 middleware

fn[res, path, stat]
02

When using cookie-parser middleware, this method also supports signed cookies. Simply include the

fn[res, path, stat]
5242 option set to
fn[res, path, stat]
70. Then
fn[res, path, stat]
5244 will use the secret passed to
fn[res, path, stat]
5253 to sign the value

fn[res, path, stat]
03

Later you may access this value through the req. signedCookies object

res. clearCookie[name [, options]]

Clears the cookie specified by

fn[res, path, stat]
916. For details about the
fn[res, path, stat]
68 object, see res. cookie[]

Các trình duyệt web và ứng dụng khách tuân thủ khác sẽ chỉ xóa cookie nếu

fn[res, path, stat]
68 đã cho giống hệt với những gì được cung cấp cho res. cookie[], excluding
fn[res, path, stat]
5237 and
fn[res, path, stat]
812

fn[res, path, stat]
04

res. download[path [, filename] [, options] [, fn]]

The optional

fn[res, path, stat]
68 argument is supported by Express v4. 16. 0 onwards

Transfers the file at

fn[res, path, stat]
835 as an “attachment”. Typically, browsers will prompt the user for download. By default, the
fn[res, path, stat]
5226 header “filename=” parameter is derrived from the
fn[res, path, stat]
835 argument, but can be overridden with the
fn[res, path, stat]
5227 parameter. If
fn[res, path, stat]
835 is relative, then it will be based on the current working directory of the process

The following table provides details on the

fn[res, path, stat]
68 parameter

The optional

fn[res, path, stat]
68 argument is supported by Express v4. 16. 0 onwards

PropertyDescriptionDefaultAvailability

fn[res, path, stat]
812Sets the max-age property of the
fn[res, path, stat]
811 header in milliseconds or a string in ms format04. 16+
fn[res, path, stat]
818Sets the
fn[res, path, stat]
819 header to the last modified date of the file on the OS. Set
fn[res, path, stat]
806 to disable it. Enabled4. 16+
fn[res, path, stat]
5272Object containing HTTP headers to serve with the file. The header
fn[res, path, stat]
5226 will be overriden by the
fn[res, path, stat]
5227 argument. 4. 16+
fn[res, path, stat]
800Option for serving dotfiles. Possible values are “allow”, “deny”, “ignore”. “ignore”4. 16+
fn[res, path, stat]
5276Enable or disable accepting ranged requests.
fn[res, path, stat]
704. 16+
fn[res, path, stat]
5278Enable or disable setting
fn[res, path, stat]
811 response header.
fn[res, path, stat]
704. 16+
fn[res, path, stat]
809Enable or disable the
fn[res, path, stat]
809 directive in the
fn[res, path, stat]
811 response header. If enabled, the
fn[res, path, stat]
812 option should also be specified to enable caching. The
fn[res, path, stat]
809 directive will prevent supported clients from making conditional requests during the life of the
fn[res, path, stat]
812 option to check if the file has changed.
fn[res, path, stat]
8064. 16+

The method invokes the callback function

fn[res, path, stat]
5288 when the transfer is complete or when an error occurs. If the callback function is specified and an error occurs, the callback function must explicitly handle the response process either by ending the request-response cycle, or by passing control to the next route

fn[res, path, stat]
05

res. end[[data] [, encoding]]

Ends the response process. This method actually comes from Node core, specifically the response. end[] method of http. ServerResponse

Use to quickly end the response without any data. If you need to respond with data, instead use methods such as res. send[] and res. json[]

fn[res, path, stat]
06

res. format[object]

Performs content-negotiation on the

fn[res, path, stat]
4990 HTTP header on the request object, when present. It uses req. accepts[] to select a handler for the request, based on the acceptable types ordered by their quality values. If the header is not specified, the first callback is invoked. When no match is found, the server responds with 406 “Not Acceptable”, or invokes the
fn[res, path, stat]
5290 callback

The

fn[res, path, stat]
55 response header is set when a callback is selected. However, you may alter this within the callback using methods such as
fn[res, path, stat]
5224 or
fn[res, path, stat]
5228

The following example would respond with

fn[res, path, stat]
5294 when the
fn[res, path, stat]
4990 header field is set to “application/json” or “*/json” [however if it is “*/*”, then the response will be “hey”]

fn[res, path, stat]
07

In addition to canonicalized MIME types, you may also use extension names mapped to these types for a slightly less verbose implementation

fn[res, path, stat]
08

res. lấy [trường]

Returns the HTTP response header specified by

fn[res, path, stat]
5222. The match is case-insensitive

fn[res, path, stat]
09

res. json[[body]]

Sends a JSON response. This method sends a response [with the correct content-type] that is the parameter converted to a JSON string using JSON. stringify[]

Tham số có thể là bất kỳ loại JSON nào, bao gồm đối tượng, mảng, chuỗi, Boolean, số hoặc null và bạn cũng có thể sử dụng nó để chuyển đổi các giá trị khác thành JSON

fn[res, path, stat]
10

độ phân giải. jsonp[[cơ thể]]

Sends a JSON response with JSONP support. Phương thức này giống hệt với

fn[res, path, stat]
5297, ngoại trừ việc nó chọn tham gia hỗ trợ gọi lại JSONP

fn[res, path, stat]
11

Theo mặc định, tên gọi lại JSONP chỉ đơn giản là

fn[res, path, stat]
907. Ghi đè điều này bằng cài đặt tên gọi lại jsonp

Sau đây là một số ví dụ về phản hồi JSONP sử dụng cùng mã

fn[res, path, stat]
12

Tham gia

fn[res, path, stat]
5299 được cung cấp làm thuộc tính của tham số để điền vào trường tiêu đề HTTP
fn[res, path, stat]
5500 của phản hồi

Ví dụ, cuộc gọi sau

fn[res, path, stat]
13

Mang lại kết quả sau

fn[res, path, stat]
14

Đặt tiêu đề HTTP

fn[res, path, stat]
5501 phản hồi thành tham số
fn[res, path, stat]
835 đã chỉ định

fn[res, path, stat]
15

Giá trị

fn[res, path, stat]
835 của “back” có ý nghĩa đặc biệt, nó đề cập đến URL được chỉ định trong tiêu đề
fn[res, path, stat]
5201 của yêu cầu. Nếu tiêu đề
fn[res, path, stat]
5201 không được chỉ định, nó đề cập đến “/”

Sau khi mã hóa URL, nếu chưa được mã hóa, Express sẽ chuyển URL đã chỉ định tới trình duyệt trong tiêu đề

fn[res, path, stat]
5501 mà không cần bất kỳ xác thực nào

Các trình duyệt chịu trách nhiệm lấy URL dự định từ URL hiện tại hoặc URL giới thiệu và URL được chỉ định trong tiêu đề

fn[res, path, stat]
5501;

độ phân giải. chuyển hướng [[trạng thái,] đường dẫn]

Chuyển hướng đến URL bắt nguồn từ

fn[res, path, stat]
835 được chỉ định, với
fn[res, path, stat]
5509 được chỉ định, một số nguyên dương tương ứng với mã trạng thái HTTP. Nếu không được chỉ định,
fn[res, path, stat]
5509 mặc định là “302 “Đã tìm thấy”

fn[res, path, stat]
16

Chuyển hướng có thể là một URL đủ điều kiện để chuyển hướng đến một trang web khác

fn[res, path, stat]
17

Chuyển hướng có thể liên quan đến thư mục gốc của tên máy chủ. Ví dụ: nếu ứng dụng trên

fn[res, path, stat]
5511, phần sau sẽ chuyển hướng đến URL
fn[res, path, stat]
5512

fn[res, path, stat]
18

Redirects can be relative to the current URL. For example, from

fn[res, path, stat]
5513 [notice the trailing slash], the following would redirect to the URL
fn[res, path, stat]
5514

fn[res, path, stat]
19

Redirecting to

fn[res, path, stat]
5515 from
fn[res, path, stat]
5516 [no trailing slash], will redirect to
fn[res, path, stat]
5517

If you found the above behavior confusing, think of path segments as directories [with trailing slashes] and files, it will start to make sense

Path-relative redirects are also possible. If you were on

fn[res, path, stat]
5511, the following would redirect to
fn[res, path, stat]
5519

fn[res, path, stat]
20

A

fn[res, path, stat]
5520 redirection redirects the request back to the referer, defaulting to
fn[res, path, stat]
4678 when the referer is missing

fn[res, path, stat]
21

res. render[view [, locals] [, callback]]

Renders a

fn[res, path, stat]
5522 and sends the rendered HTML string to the client. Optional parameters

  • fn[res, path, stat]
    
    5523, an object whose properties define local variables for the view
  • fn[res, path, stat]
    
    907, a callback function. If provided, the method returns both the possible error and rendered string, but does not perform an automated response. When an error occurs, the method invokes
    fn[res, path, stat]
    
    831 internally

The

fn[res, path, stat]
5522 argument is a string that is the file path of the view file to render. This can be an absolute path, or a path relative to the
fn[res, path, stat]
4653 setting. Nếu đường dẫn không chứa phần mở rộng tệp, thì cài đặt
fn[res, path, stat]
4657 sẽ xác định phần mở rộng tệp. If the path does contain a file extension, then Express will load the module for the specified template engine [via
fn[res, path, stat]
936] and render it using the loaded module’s
fn[res, path, stat]
5530 function

For more information, see Using template engines with Express

NOTE. The

fn[res, path, stat]
5522 argument performs file system operations like reading a file from disk and evaluating Node. js modules, and as so for security reasons should not contain input from the end-user

The local variable

fn[res, path, stat]
4614 enables view caching. Set it to
fn[res, path, stat]
70, to cache the view during development; view caching is enabled in production by default

fn[res, path, stat]
22

res. send[[body]]

Sends the HTTP response

The

fn[res, path, stat]
59 parameter can be a
fn[res, path, stat]
92 object, a
fn[res, path, stat]
5536, an object,
fn[res, path, stat]
5537, or an
fn[res, path, stat]
5538. For example

fn[res, path, stat]
23

This method performs many useful tasks for simple non-streaming responses. For example, it automatically assigns the

fn[res, path, stat]
5539 HTTP response header field [unless previously defined] and provides automatic HEAD and HTTP cache freshness support

When the parameter is a

fn[res, path, stat]
92 object, the method sets the
fn[res, path, stat]
55 response header field to “application/octet-stream”, unless previously defined as shown below

fn[res, path, stat]
24

When the parameter is a

fn[res, path, stat]
5536, the method sets the
fn[res, path, stat]
55 to “text/html”

fn[res, path, stat]
25

When the parameter is an

fn[res, path, stat]
5538 or
fn[res, path, stat]
5545, Express responds with the JSON representation

fn[res, path, stat]
26

res. sendFile[path [, options] [, fn]]

fn[res, path, stat]
5546 is supported by Express v4. 8. 0 onwards

Transfers the file at the given

fn[res, path, stat]
835. Sets the
fn[res, path, stat]
55 response HTTP header field based on the filename’s extension. Unless the
fn[res, path, stat]
95 option is set in the options object,
fn[res, path, stat]
835 must be an absolute path to the file

This API provides access to data on the running file system. Ensure that either [a] the way in which the

fn[res, path, stat]
835 argument was constructed into an absolute path is secure if it contains user input or [b] set the
fn[res, path, stat]
95 option to the absolute path of a directory to contain access within

When the

fn[res, path, stat]
95 option is provided, the
fn[res, path, stat]
835 argument is allowed to be a relative path, including containing
fn[res, path, stat]
5555. Express will validate that the relative path provided as
fn[res, path, stat]
835 will resolve within the given
fn[res, path, stat]
95 option

The following table provides details on the

fn[res, path, stat]
68 parameter

PropertyDescriptionDefaultAvailability

fn[res, path, stat]
812Sets the max-age property of the
fn[res, path, stat]
811 header in milliseconds or a string in ms format0
fn[res, path, stat]
95Root directory for relative filenames.
fn[res, path, stat]
818Sets the
fn[res, path, stat]
819 header to the last modified date of the file on the OS. Set
fn[res, path, stat]
806 to disable it. Enabled4. 9. 0+
fn[res, path, stat]
5272Object containing HTTP headers to serve with the file.
fn[res, path, stat]
800Option for serving dotfiles. Possible values are “allow”, “deny”, “ignore”. “ignore”
fn[res, path, stat]
5276Enable or disable accepting ranged requests.
fn[res, path, stat]
704. 14+
fn[res, path, stat]
5278Enable or disable setting
fn[res, path, stat]
811 response header.
fn[res, path, stat]
704. 14+
fn[res, path, stat]
809Enable or disable the
fn[res, path, stat]
809 directive in the
fn[res, path, stat]
811 response header. If enabled, the
fn[res, path, stat]
812 option should also be specified to enable caching. The
fn[res, path, stat]
809 directive will prevent supported clients from making conditional requests during the life of the
fn[res, path, stat]
812 option to check if the file has changed.
fn[res, path, stat]
8064. 16+

The method invokes the callback function

fn[res, path, stat]
5288 when the transfer is complete or when an error occurs. If the callback function is specified and an error occurs, the callback function must explicitly handle the response process either by ending the request-response cycle, or by passing control to the next route

Here is an example of using

fn[res, path, stat]
5580 with all its arguments

fn[res, path, stat]
27

The following example illustrates using

fn[res, path, stat]
5580 to provide fine-grained support for serving files

fn[res, path, stat]
28

For more information, or if you have issues or concerns, see send

res. sendStatus[statusCode]

Sets the response HTTP status code to

fn[res, path, stat]
5582 and sends the registered status message as the text response body. If an unknown status code is specified, the response body will just be the code number

fn[res, path, stat]
29

Some versions of Node. js will throw when

fn[res, path, stat]
5583 is set to an invalid HTTP status code [outside of the range
fn[res, path, stat]
5584 to
fn[res, path, stat]
5585]. Tham khảo tài liệu máy chủ HTTP cho Node. phiên bản js đang được sử dụng

Tìm hiểu thêm về Mã trạng thái HTTP

độ phân giải. đặt [trường [, giá trị]]

Đặt tiêu đề HTTP của phản hồi

fn[res, path, stat]
5222 thành
fn[res, path, stat]
4618. Để đặt nhiều trường cùng một lúc, hãy chuyển một đối tượng làm tham số

fn[res, path, stat]
30

Bí danh là

fn[res, path, stat]
5588

độ phân giải. trạng thái [mã]

Đặt trạng thái HTTP cho phản hồi. Nó là bí danh có thể xâu chuỗi của phản hồi của Node. mã trạng thái

fn[res, path, stat]
31

độ phân giải. loại[loại]

Đặt tiêu đề HTTP

fn[res, path, stat]
55 thành loại MIME như được xác định bởi
fn[res, path, stat]
56 đã chỉ định. Nếu
fn[res, path, stat]
56 chứa ký tự “/”, thì nó đặt
fn[res, path, stat]
55 thành giá trị chính xác của
fn[res, path, stat]
56, nếu không, nó được coi là phần mở rộng tệp và loại MIME được tra cứu trong ánh xạ bằng phương pháp
fn[res, path, stat]
5594

fn[res, path, stat]
32

độ phân giải. thay đổi [lĩnh vực]

Thêm trường vào tiêu đề phản hồi

fn[res, path, stat]
5595, nếu nó chưa có

fn[res, path, stat]
33

bộ định tuyến

Một đối tượng

fn[res, path, stat]
848 là một trường hợp riêng biệt của phần mềm trung gian và các tuyến đường. Bạn có thể coi nó như một “ứng dụng nhỏ”, chỉ có khả năng thực hiện các chức năng định tuyến và phần mềm trung gian. Mọi ứng dụng Express đều có bộ định tuyến ứng dụng tích hợp

Bộ định tuyến hoạt động giống như chính phần mềm trung gian, vì vậy bạn có thể sử dụng nó làm đối số cho ứng dụng. use[] hoặc làm đối số cho phương thức use[] của bộ định tuyến khác

Đối tượng

fn[res, path, stat]
54 cấp cao nhất có phương thức Bộ định tuyến [] tạo đối tượng
fn[res, path, stat]
848 mới

Khi bạn đã tạo một đối tượng bộ định tuyến, bạn có thể thêm phần mềm trung gian và các tuyến phương thức HTTP [chẳng hạn như

fn[res, path, stat]
845,
fn[res, path, stat]
846,
fn[res, path, stat]
847, v.v.] vào nó giống như một ứng dụng. Ví dụ

fn[res, path, stat]
34

Sau đó, bạn có thể sử dụng bộ định tuyến cho một URL gốc cụ thể theo cách này, tách các tuyến đường của bạn thành các tệp hoặc thậm chí là các ứng dụng nhỏ

fn[res, path, stat]
35

phương pháp

bộ định tuyến. tất cả [đường dẫn, [gọi lại,. ] gọi lại]

Phương thức này giống như các phương thức

fn[res, path, stat]
5902, ngoại trừ việc nó phù hợp với tất cả các phương thức HTTP [động từ]

Phương pháp này cực kỳ hữu ích để ánh xạ logic “toàn cầu” cho các tiền tố đường dẫn cụ thể hoặc các đối sánh tùy ý. Ví dụ: nếu bạn đặt tuyến đường sau ở trên cùng của tất cả các định nghĩa tuyến đường khác, nó sẽ yêu cầu tất cả các tuyến đường từ thời điểm đó trở đi sẽ yêu cầu xác thực và tự động tải người dùng. Hãy nhớ rằng những cuộc gọi lại này không phải đóng vai trò là điểm cuối;

fn[res, path, stat]
36

Hoặc tương đương

fn[res, path, stat]
37

Một ví dụ khác về điều này là chức năng “toàn cầu” được liệt kê trắng. Đây là ví dụ giống như trước, nhưng nó chỉ giới hạn các đường dẫn có tiền tố là “/api”

fn[res, path, stat]
38

bộ định tuyến. PHƯƠNG PHÁP [đường dẫn, [gọi lại,. ] gọi lại]

Các phương thức

fn[res, path, stat]
5902 cung cấp chức năng định tuyến trong Express, trong đó METHOD là một trong các phương thức HTTP, chẳng hạn như GET, PUT, POST, v.v., viết thường. Do đó, các phương pháp thực tế là
fn[res, path, stat]
5906,
fn[res, path, stat]
5907,
fn[res, path, stat]
5908, v.v.

Hàm

fn[res, path, stat]
5906 được gọi tự động cho phương thức HTTP
fn[res, path, stat]
986 ngoài phương thức
fn[res, path, stat]
987 nếu trước đó
fn[res, path, stat]
5912 không gọi cho đường dẫn
fn[res, path, stat]
5906

Bạn có thể cung cấp nhiều cuộc gọi lại và tất cả đều được xử lý như nhau và hoạt động giống như phần mềm trung gian, ngoại trừ việc các cuộc gọi lại này có thể gọi

fn[res, path, stat]
908 để bỏ qua [các] cuộc gọi lại tuyến đường còn lại. Bạn có thể sử dụng cơ chế này để thực hiện các điều kiện trước trên một tuyến đường, sau đó chuyển quyền kiểm soát cho các tuyến tiếp theo khi không có lý do gì để tiếp tục với tuyến đã khớp

Đoạn mã sau minh họa định nghĩa tuyến đường đơn giản nhất có thể. Express dịch các chuỗi đường dẫn thành các biểu thức thông thường, được sử dụng nội bộ để khớp với các yêu cầu đến. Các chuỗi truy vấn không được xem xét khi thực hiện các kết quả khớp này, ví dụ: “GET /” sẽ khớp với tuyến sau, cũng như “GET /?name=tobi”

fn[res, path, stat]
39

Bạn cũng có thể sử dụng các biểu thức chính quy—hữu ích nếu bạn có các ràng buộc rất cụ thể, ví dụ: các ràng buộc sau sẽ khớp với “GET /commits/71dbb9c” cũng như “GET /commits/71dbb9c”. 4c084f9”

fn[res, path, stat]
40

Bạn có thể sử dụng nguyên hàm

fn[res, path, stat]
995 để triển khai kiểm soát luồng giữa các chức năng phần mềm trung gian khác nhau, dựa trên trạng thái chương trình cụ thể. Gọi
fn[res, path, stat]
995 với chuỗi
fn[res, path, stat]
5917 sẽ khiến tất cả các cuộc gọi lại tuyến đường còn lại trên bộ định tuyến đó bị bỏ qua

Ví dụ sau minh họa cách sử dụng

fn[res, path, stat]
5918

fn[res, path, stat]
41

bộ định tuyến. param[tên, gọi lại]

Thêm trình kích hoạt gọi lại vào các tham số định tuyến, trong đó

fn[res, path, stat]
916 là tên của tham số và
fn[res, path, stat]
907 là chức năng gọi lại. Mặc dù
fn[res, path, stat]
916 là tùy chọn về mặt kỹ thuật, việc sử dụng phương pháp này mà không có nó không được chấp nhận bắt đầu với Express v4. 11. 0 [xem bên dưới]

Các tham số của hàm gọi lại là

  • fn[res, path, stat]
    
    901, đối tượng yêu cầu
  • fn[res, path, stat]
    
    834, đối tượng phản hồi
  • fn[res, path, stat]
    
    995, cho biết chức năng phần mềm trung gian tiếp theo
  • Giá trị của tham số
    fn[res, path, stat]
    
    916
  • Tên của thông số

Không giống như

fn[res, path, stat]
5926,
fn[res, path, stat]
5927 không chấp nhận một mảng tham số tuyến đường

Ví dụ: khi có

fn[res, path, stat]
998 trong đường dẫn tuyến đường, bạn có thể ánh xạ logic tải của người dùng để tự động cung cấp
fn[res, path, stat]
999 cho tuyến đường hoặc thực hiện xác thực trên đầu vào tham số

fn[res, path, stat]
42

Các chức năng gọi lại tham số là cục bộ của bộ định tuyến mà chúng được xác định. Chúng không được kế thừa bởi các ứng dụng hoặc bộ định tuyến được gắn kết. Do đó, các cuộc gọi lại param được xác định trên

fn[res, path, stat]
848 sẽ chỉ được kích hoạt bởi các tham số tuyến đường được xác định trên các tuyến đường
fn[res, path, stat]
848

Một cuộc gọi lại param sẽ chỉ được gọi một lần trong chu kỳ phản hồi yêu cầu, ngay cả khi tham số được so khớp trong nhiều tuyến, như minh họa trong các ví dụ sau

fn[res, path, stat]
43

Trên

fn[res, path, stat]
4602, phần sau được in

fn[res, path, stat]
91

Phần sau đây mô tả

fn[res, path, stat]
5933, không được dùng nữa kể từ v4. 11. 0

Hành vi của phương thức

fn[res, path, stat]
5934 có thể được thay đổi hoàn toàn bằng cách chỉ chuyển một hàm cho
fn[res, path, stat]
5927. Hàm này là một triển khai tùy chỉnh về cách hoạt động của
fn[res, path, stat]
5934 - nó chấp nhận hai tham số và phải trả về một phần mềm trung gian

Tham số đầu tiên của hàm này là tên của tham số URL cần được ghi lại, tham số thứ hai có thể là bất kỳ đối tượng JavaScript nào có thể được sử dụng để trả về triển khai phần mềm trung gian

Phần mềm trung gian được trả về bởi hàm quyết định hành vi của những gì sẽ xảy ra khi tham số URL bị bắt

Trong ví dụ này, chữ ký

fn[res, path, stat]
5934 được sửa đổi thành
fn[res, path, stat]
5938. Thay vì chấp nhận tên và gọi lại, giờ đây,
fn[res, path, stat]
5927 sẽ chấp nhận tên và số

fn[res, path, stat]
45

Trong ví dụ này, chữ ký

fn[res, path, stat]
5934 vẫn giữ nguyên, nhưng thay vì gọi lại phần mềm trung gian, chức năng kiểm tra loại dữ liệu tùy chỉnh đã được xác định để xác thực loại dữ liệu của id người dùng

fn[res, path, stat]
46

bộ định tuyến. lộ trình [đường đi]

Trả về một thể hiện của một tuyến mà sau đó bạn có thể sử dụng để xử lý các động từ HTTP với phần mềm trung gian tùy chọn. Sử dụng

fn[res, path, stat]
5941 để tránh đặt tên tuyến đường trùng lặp và do đó đánh máy lỗi

Dựa trên ví dụ về

fn[res, path, stat]
5927 ở trên, đoạn mã sau cho biết cách sử dụng
fn[res, path, stat]
5941 để chỉ định các trình xử lý phương thức HTTP khác nhau

fn[res, path, stat]
47

Cách tiếp cận này sử dụng lại đường dẫn

fn[res, path, stat]
5944 duy nhất và thêm trình xử lý cho các phương thức HTTP khác nhau

GHI CHÚ. Khi bạn sử dụng

fn[res, path, stat]
5941, thứ tự phần mềm trung gian dựa trên thời điểm tạo tuyến, không phải khi trình xử lý phương thức được thêm vào tuyến. Với mục đích này, bạn có thể coi các trình xử lý phương thức thuộc về tuyến đường mà chúng được thêm vào

bộ định tuyến. sử dụng [[đường dẫn], [chức năng,. ] hàm số]

Sử dụng chức năng hoặc chức năng phần mềm trung gian được chỉ định, với đường dẫn gắn kết tùy chọn

fn[res, path, stat]
835, mặc định là “/”

Phương pháp này tương tự như ứng dụng. sử dụng[]. Một ví dụ đơn giản và trường hợp sử dụng được mô tả bên dưới. xem ứng dụng. sử dụng [] để biết thêm thông tin

Phần mềm trung gian giống như một đường ống dẫn nước. các yêu cầu bắt đầu tại chức năng phần mềm trung gian đầu tiên được xác định và hoạt động theo cách của chúng "xuống" quá trình xử lý ngăn xếp phần mềm trung gian cho từng đường dẫn mà chúng khớp

fn[res, path, stat]
48

Đường dẫn "gắn kết" bị tước và không hiển thị đối với chức năng phần mềm trung gian. Tác dụng chính của tính năng này là chức năng phần mềm trung gian được gắn có thể hoạt động mà không cần thay đổi mã bất kể tên đường dẫn "tiền tố" của nó

Thứ tự mà bạn xác định phần mềm trung gian với

fn[res, path, stat]
5947 là rất quan trọng. Chúng được gọi tuần tự, do đó thứ tự xác định mức độ ưu tiên của phần mềm trung gian. Ví dụ: thông thường, trình ghi nhật ký là phần mềm trung gian đầu tiên bạn sẽ sử dụng để mọi yêu cầu được ghi lại

fn[res, path, stat]
49

Bây giờ, giả sử bạn muốn bỏ qua các yêu cầu ghi nhật ký cho các tệp tĩnh, nhưng để tiếp tục ghi nhật ký các tuyến đường và phần mềm trung gian được xác định sau

fn[res, path, stat]
5948. Bạn chỉ cần di chuyển cuộc gọi đến
fn[res, path, stat]
5949 lên trên cùng, trước khi thêm phần mềm trung gian logger

fn[res, path, stat]
50

Một ví dụ khác là phục vụ tệp từ nhiều thư mục, ưu tiên cho “. /public” so với những cái khác

fn[res, path, stat]
522

Phương pháp

fn[res, path, stat]
5947 cũng hỗ trợ các tham số được đặt tên để các điểm gắn kết của bạn cho các bộ định tuyến khác có thể được hưởng lợi từ việc tải trước bằng các tham số được đặt tên

GHI CHÚ. Mặc dù các chức năng phần mềm trung gian này được thêm thông qua một bộ định tuyến cụ thể, nhưng khi chúng chạy được xác định bởi đường dẫn mà chúng được gắn vào [không phải bộ định tuyến]. Do đó, phần mềm trung gian được thêm qua một bộ định tuyến có thể chạy cho các bộ định tuyến khác nếu các tuyến của nó khớp. Ví dụ: mã này hiển thị hai bộ định tuyến khác nhau được gắn trên cùng một đường dẫn

fn[res, path, stat]
52

Mặc dù phần mềm trung gian xác thực đã được thêm thông qua

fn[res, path, stat]
5951 nhưng nó cũng sẽ chạy trên các tuyến được xác định bởi
fn[res, path, stat]
5952 vì cả hai bộ định tuyến đều được gắn trên
fn[res, path, stat]
5953. Để tránh hành vi này, hãy sử dụng các đường dẫn khác nhau cho mỗi bộ định tuyến

Làm cách nào để gửi dữ liệu từ nút JS sang HTML?

Tôi đang cố chuyển một biến từ nút. js vào tệp HTML của tôi. ứng dụng. .
npm install --save pug - để thêm nó vào dự án và gói. tập tin json
ứng dụng. set['xem engine', 'pug'];
tạo một. /views thư mục và thêm một đơn giản. tập tin pug như vậy

Nút JS CÓ THỂ kết xuất HTML không?

Độ phân giải. sendFile[] phương thức của express. mô-đun js được sử dụng để hiển thị một tệp HTML cụ thể có trong máy cục bộ .

Chủ Đề