Skip to content

cHttpServerRequest 请求对象

简介

cHttpServerRequest 封装了 HTTP 请求的所有信息,包括请求方法、URL、头部、参数、表单数据、JSON 数据等。

属性

Method

请求方法枚举值。

vb
Public Method As EnumRequestMethod

取值:

  • ReqPost = 1
  • ReqGet = 2
  • ReqPut = 3
  • ReqDelete = 4
  • ReqOptions = 5

示例:

vb
If ctx.Request.Method = ReqPost Then
    Debug.Print "POST 请求"
End If

MethodName

请求方法名称字符串。

vb
Public MethodName As String

示例:

vb
Debug.Print "方法: " & ctx.Request.MethodName  ' 输出: GET 或 POST 等

HttpVersion

HTTP 版本。

vb
Public HttpVersion As String

示例:

vb
Debug.Print "HTTP 版本: " & ctx.Request.HttpVersion  ' 输出: HTTP/1.1

url

完整请求 URL(已解码)。

vb
Public url As String

示例:

vb
Debug.Print "URL: " & ctx.Request.url
' 输出: /user/list?page=1&limit=10

PathInfo

请求路径(不含查询参数)。

vb
Public PathInfo As String

示例:

vb
' 请求 /user/list?page=1
Debug.Print "路径: " & ctx.Request.PathInfo
' 输出: /user/list

PathInfoController

自动路由解析的控制器名。

vb
Public PathInfoController As String

示例:

vb
' 请求 /User/List
Debug.Print "控制器: " & ctx.Request.PathInfoController
' 输出: User

PathInfoAction

自动路由解析的方法名。

vb
Public PathInfoAction As String

示例:

vb
' 请求 /User/List
Debug.Print "方法: " & ctx.Request.PathInfoAction
' 输出: List

QueryInfo

查询参数字符串。

vb
Public QueryInfo As String

示例:

vb
' 请求 /user?page=1&limit=10
Debug.Print "查询: " & ctx.Request.QueryInfo
' 输出: page=1&limit=10

QueryString

查询参数字典。

vb
Public QueryString As New Scripting.Dictionary

示例:

vb
' GET /user?id=123&name=张三
Dim id As String
id = ctx.Request.QueryString("id")

Dim name As String
name = ctx.Request.QueryString("name")

Form

POST 表单数据字典。

vb
Public Form As New Scripting.Dictionary

示例:

vb
' POST 表单: username=admin&password=123
Dim username As String
username = ctx.Request.Form("username")

Dim password As String
password = ctx.Request.Form("password")

Json

JSON 数据对象。

vb
Public Json As New cJson

示例:

vb
' POST JSON: {"name":"张三","age":25}
Dim name As String
name = ctx.Request.Json.GetItem("name")

Dim age As Long
age = ctx.Request.Json.GetItem("age")

请求头部字典。

vb
Public Header As New Scripting.Dictionary

示例:

vb
' 获取 User-Agent
If ctx.Request.Header.Exists("User-Agent") Then
    Debug.Print ctx.Request.Header("User-Agent")
End If

' 获取 Authorization
Dim token As String
token = ctx.Request.Header("Authorization")

HeaderRaw

原始请求头字符串。

vb
Public HeaderRaw As String

HeaderUserAgent

User-Agent 快捷访问。

vb
Public HeaderUserAgent As String

HeaderAccept

Accept 头部快捷访问。

vb
Public HeaderAccept As String

HeaderHost

Host 头部。

vb
Public HeaderHost As String

HeaderHostDomain

域名部分。

vb
Public HeaderHostDomain As String

HeaderHostPort

端口部分。

vb
Public HeaderHostPort As Long

HeaderContentType

Content-Type 头部。

vb
Public HeaderContentType As String

HeaderContentLength

Content-Length 头部。

vb
Public HeaderContentLength As Long

RawBodyText

原始请求体文本。

vb
Public Property Get RawBodyText() As String

RawBodyBin

原始请求体字节数组。

vb
Public Property Get RawBodyBin() As Byte()

Item (默认属性)

智能获取参数值(从 QueryString、Form、Json 按顺序查找)。

vb
Public Property Get Item(ByVal key) As Variant

示例:

vb
' 自动从 query/form/json 获取参数
Dim value As Variant
value = ctx.Request("username")
value = ctx.Request("page")

最后更新: 2026-05-17

VB6及其LOGO版权为微软公司所有