首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式碼之家 >> 編程語言 >  >> .NET 網頁程式設計 >> ASP.NET 基礎 >> 關於ASP.NET

ASP.NET Request 物件常用屬性完整參考表

     編輯:關於ASP.NET

HttpRequest 類別封裝 HTTP 請求資訊,是 ASP.NET 伺服器端存取客戶端資料的核心入口。以下整理常用屬性與集合,附中文說明與使用情境,供開發快速查閱。

核心屬性分類表

分類屬性 / 集合說明常見用途
客戶端資訊UserHostAddress客戶端 IP 位址記錄存取日誌、IP 限制
UserHostName客戶端 DNS 主機名稱反向解析主機名
UserAgent瀏覽器 User-Agent 字串裝置偵測、瀏覽器相容處理
BrowserHttpBrowserCapabilities 物件強型別瀏覽器能力(支援 CSS、JS、行動裝置等)
UserLanguages接受語言陣列多語系偵測、自動切換文化特性
ClientCertificate客戶端憑證資訊雙向 SSL 驗證
URL 與路徑Url完整 URL 物件(含 QueryString)取得絕對路徑、參數解析
RawUrl原始 URL(含查詢字串,不含域名)URL 重寫、記錄原始請求
FilePath當前執行檔案相對路徑判斷當前頁面
Path虛擬路徑路由比對
ApplicationPath應用程式虛擬目錄根路徑產生相對/絕對 URL
請求方式與內容HttpMethodGET / POST / PUT / DELETE...RESTful API 動詞判斷
RequestType同 HttpMethod(別名)同上
ContentTypeMIME 類型檔案上傳驗證、API 內容協商
TotalBytes請求內容總位元組數限制上傳大小
資料集合QueryStringURL 參數集合GET 參數讀取
Form表單欄位集合POST 資料讀取
CookiesCookie 集合追蹤用戶、Session ID
Files上傳檔案集合HttpPostedFile 存取檔案流
HeadersHTTP 標頭集合自訂標頭、授權 Token
ParamsQueryString+Form+Cookies+ServerVariables 合併不指定來源快速取值(效能稍差)
伺服器變數與安全ServerVariablesIIS 伺服器變數(如 AUTH_USER、LOGON_USER)Windows 整合驗證取得帳號
IsSecureConnection是否 HTTPS強制 HTTPS、產生安全連結
IsAuthenticated已通過驗證權限檢查
ConnectionId連線唯一識別碼長連線追蹤、SignalR 相關

實用程式碼片段

取得真實 IP(考慮 Proxy / Load Balancer)

public string GetClientIp()
{
    string ip = Request.Headers["X-Forwarded-For"] 
             ?? Request.Headers["X-Real-IP"] 
             ?? Request.UserHostAddress;
    return ip.Split(',')[0].Trim(); // X-Forwarded-For 可能有多個 IP
}

判斷行動裝置

bool isMobile = Request.Browser.IsMobileDevice;
// 或自訂 UserAgent 判斷

安全讀取參數(防 XSS)

string id = Request.QueryString["id"]; // 自動 URL 解碼
// 輸出時記得 HtmlEncode

注意事項

  • Params 合併搜尋順序:QueryString → Form → Cookies → ServerVariables,同名鍵值以最先找到者為準,避免依賴它做關鍵邏輯。
  • Files 需表單設 enctype="multipart/form-data"。
  • ServerVariables 部分鍵需 IIS 設定(如 LOGON_USER 需啟用 Windows 驗證)。
  • ASP.NET Core 使用 HttpContext.Request,API 類似但屬性名稱 PascalCase(如 Host、Method、Query)。

快速查詢小抄


// 常用單行
Request.UserHostAddress        // IP
Request.Url.AbsoluteUri        // 完整 URL
Request.QueryString["id"]      // 參數
Request.Form["username"]       // 表單欄位
Request.Cookies["auth"]?.Value // Cookie 值
Request.Files["upload"]        // 上傳檔案
Request.IsSecureConnection     // 是否 HTTPS

建議將此表收藏,開發時遇到「怎麼取 IP?」、「怎麼判斷行動裝置?」即可秒查。

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