Một trong những mục đích của ASP là cho phép nhận thông tin từ phía client và người sử dụng. Đối tượng Request được dùng để nhận các thông tin đóđược dễ dàng. Đối tượng Request quản lý các thông tin được gửi từ phía web browser lên server như dữ liệu của các form, cookies...
Đối tượng Request giúp chúng ta truy cập vào đoạn đầu và thân các yêu cầu HTTP của người sử dụng. Đây là đối tượng rất quan trọng vì ta phải thông qua nó để nhận được và đáp ứng các yêu cầu người sử dụng đưa ra. Sử dụng đối tượng Request chúng ta mới có thể xây dựng được trang web động và thực hiện được các hoạt động khác có ý nghĩa hơn ở máy chủ như cập nhật các dữ liệu ở máy khách vào cơ sở dữ liệu...
5.7.2.1. Một số tập hợp thông dụng trong đối tượng Request
TÊN TẬP HỢP MIÊU TẢ
QueryString(<tên biến>) Chứa các giá trị được gửi lên từ các yêu cầu HTTP Get (hiểu đơn giản là từ các URL)
Form(<Tên form>) Chứa các giá trị trong form được gửi đến (với điều kiện form phải sử dụng phương pháp POST Cookies(<Tên cookie>) Chứa các thông tin của các cookies được gửi trong
yêu cầu HTTP
ServerVariables(<tên biến>) Chứa danh sách các giá trị của các biến môi trường đã được xác định trước
a. Tập hợp QueryString
Tập hợp QueryString cho phép ta lấy thông tin từ máy khách gửi đến, có thể là một form được gửi theo phương pháp GET hoặc dữ liệu được gắn với URL khi trang web được yêu cầu.
Để đưa được các biến vào chương trình, sau phần cuối của địa chỉ thông thường ta thêm dấu (?) rồi sau đóđến từng cặp <tên biến> = <giá trị>được phân cách nhau bởi dấu (&).
Ví dụ: để truyền ba biến a, b, c có giá trị lần lượt là 1, 2, 1 về trang PTBAC2.ASP trên server thì chuỗi URL khi đó như sau.
http://localhost/ptbac2.asp?a=1&b=2&c=1
Tập hợp này có tính năng tương đối hạn chế về số lượng các kí tự có thể gửi được trong tiêu đề và trong yêu cầu HTTP. Giới hạn dữ liệu này ở khoảng dưới 2000 kí tự. Nêu số lượng kí tự vượt quá số lượng giới hạn thì chúng sẽ không được sử dụng mặc dù script vẫn chạy.
Ví dụ: ta quay lại ví dụ Giải phương trình bậc 2 ở bài trước. Các biến a, b, c được lấy vào trong chương trình bằng cách lấy từ QueryString.
Và các biến này được truyền vào từ URL của trình duyệt:
b. Tập hợp Form
Tập hợp này cho phép nhận thông tin đầu vào từ các form được gửi đến thông qua phương thức POST. Phương thức này có ưu điểm hơn phương thức GET ở chỗ là có thể truyền được lượng dữ liệu lớn.
* Ví dụ: Ta có thể sửa lại chương trình giải phương trình bậc 2 trong phần trên để cho phép người sử dụng nhập dữ liệu từ trang PTBAC2.HTM và gửi dữ liệu sang trang
GIAIPTB2.ASP để xử lý như sau: - Mã lệnh PTBAC2.HTM
- Mã lệnh phần đọc dữ liệu trong GIAIPTB2.ASP
- Kết quả
Giải thích chi tiết cho phương pháp này sẽ được đề cập ở phần sau.
c. Tập hợp Cookies
Cookies là những mẩu thông tin nhỏ được lưu trên máy trạm thông thường các Cookies được sử dụng để xác định các người sử dụng truy cập trang web.
Chi tiết về Cookies sẽ được đề cập trong một phần riêng về Cookies.
d. Tập hợp ServerVariables
ServerVariables là một tập các giá trị của HTTP header được gửi từ client cùng với giá trị một số biến môi trường của webserver. Các thành phần trong tập này đều là giá trị chỉ đọc.
5.7.2.2. Thuộc tính
Đối tượng Request chỉ có một thuộc tính duy nhất đó là TotalBytes cung cấp thông tin về số bytes dữ liệu mà người dùng chuyển lên web server. Thuộc tính này ít được sử dụng trừ trường hợp xử lý đặc biệt trên server như upload file từ phía client.
5.7.3.3. Phương thức
Đối tượng Request chỉ có một phương thức là BinaryRead phương thức này rất ít được sử dụng và thường không được dùng đến nên ta không đề cập cụ thể ở đây.