首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式碼之家 >> 編程語言 >  >> 網頁程式設計 >> ASP 程式設計 >> ASP 入門教學

ASP 入門教學:Request 物件完整架構與核心集合解析

     編輯:ASP 入門教學

Request 物件是 ASP 伺服器端接收客戶端資訊的核心,負責在 HTTP 請求期間擷取瀏覽器傳送的所有資料,包含表單欄位、查詢字串、Cookie、伺服器變數與客戶憑證,是伺服器與客戶端互動的橋樑。

五大核心集合總覽

集合名稱用途說明典型應用場景
ClientCertificate客戶端憑證所有欄位值(唯讀)SSL 客戶端驗證、身分識別
Cookies隨請求送來的所有 Cookie 值(唯讀)使用者辨識、購物車、偏好設定
FormPOST 請求主體中的表單元素值(唯讀)登入、註冊、資料送出處理
QueryStringURL 查詢字串中的變數值(唯讀)搜尋關鍵字、分頁參數、書籤分享
ServerVariablesHTTP 標頭與伺服器環境變數(唯讀)取得 IP、瀏覽器類型、伺服器路徑等

最常用:Form、Cookies、QueryString 三大集合。

唯一屬性:TotalBytes

傳回客戶端請求的總位元組數。實務上較少直接使用,通常關心的是請求內容而非長度。

唯一方法:BinaryRead(count)

  • count:欲讀取的位元組數(通常為 Request.TotalBytes)。
  • 回傳 Variant 陣列(SafeArray),含原始二進位資料。
  • 互斥限制:已存取 Request.Form 後不可再呼叫 BinaryRead,反之亦然。

適用於檔案上傳、非標準表單資料解析等進階情境。

通用語法

Request.[ 集合 | 屬性 | 方法 ] (變數)

ASP 與表單互動的三種模式

  1. HTML 頁面 → ASP 處理頁:靜態表單送至動態頁處理(最經典)。
  2. ASP 頁面 → 自身處理:同一檔案同時包含表單與處理邏輯,依 Request.Form 是否為空判斷是否為回傳。
  3. ASP 頁面 → 另一 ASP 頁面:多步驟精靈、驗證碼驗證等流程控制。

實作範例 1:分離式表單與處理頁

1.htm(前端表單)

<html>
<head><title>輸入資訊</title></head>
<body>
<form action="1.asp" Method="post">
姓名:<input type="Text" name="姓名" size="8"><br><p>
性別:男<input type="Radio" name="性別" value="男" Checked>
女<input type="Radio" name="性別" value="女"><p>
<input type="Submit" value="提交">
<input type="Reset" value="重寫">
</form>
</body>
</html>

1.asp(後端處理)

<html>
<head><title>使用 Request 物件取得表單資訊</title></head>
<Body>
<p align="center">歡迎您登錄本站點<p>
<%
Response.Write "您是:" & Request.Form("姓名")
If Request.Form("性別") = "男" Then
    Response.Write "。是一位帥男。"
Else
    Response.Write "。是一位亮妹。"
End If
%>
<p><a href="1.htm">返回上一頁</a></P>
</Body>
</html>

實作範例 2:單一檔案自我回傳

<html>
<head><title>ASP 與表單互動</title></head>
<body><h3 align=center>ASP與表單的交互</h3><br>
<center>
<%
xm = Request.Form("姓名")
xb = Request.Form("性別")
If xm <> "" Then
    Response.Write "<p>歡迎登錄本站<br>"
    Response.Write "您的大名是" & xm & "。"
    If xb = "男" Then
        Response.Write ".是一位帥男。"
    Else
        Response.Write "。是一位亮妹。"
    End If
    Response.Write "<P><a href='4-3-1.asp' target='txtFrame'>返回上一頁</a>"
    Response.End
End If
%>
請輸入
<form Action="2.asp" method="post">
姓名:<input type="text" Name="姓名" size="8">
性別:男<input type="Radio" Name="性別" value="男" checked>
女<input type="Radio" Name="性別" value="女"><p>
<input type="Submit" value="提交">
<input type="Reset" value="重寫">
</form>
</center>
</body>
</html>

關鍵觀念釐清

  • Request.Form 是伺服器端物件集合;HTML <form> 是客戶端標籤。前者接收後者透過 POST 送來的資料。
  • 所有集合成員均為唯讀,無法在伺服器端直接修改客戶端送來的值。
  • ServerVariables 擁有豐富環境資訊(如 HTTP_USER_AGENT、REMOTE_ADDR、SCRIPT_NAME),是記錄日誌、防盜鏈、裝置偵測的重要來源。

徹底理解 Request 物件架構,能讓您精準掌控每一次 HTTP 互動的資料流向。

  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved