2
Request

yutent edited this page 2023-11-02 17:48:05 +08:00

Request请求体对象

这是一个对原生的http request请求体进一步封装后的对象, 会自动对url的合法性进行校验, 并且以友好的方式返回错误信息。 同时封装一些常用的方法。

属性

  • .url 当前请求的url(修正后的)。

  • .method http请求方法, 大写。

  • .host 当前请求所使用的域名(含端口号, 非80和443时)

  • .hostname 当前请求所使用的域名(不含端口号)

  • .path 除一级路由以外的部分, 以数组格式储存。 注意: 路由模式一会抽走第2段

  • .protocol 当前请求使用的协议(http|https), 使用nginx或其他负载均衡代理访问时, 依赖x-forwarded-proto判断。

  • .query 当前请求的url上的参数对象。

  • .headers 当前请求的所有headers对象, key全部为小写。

  • .cookies 当前请求的携带的所有的cookies。

  • .ip 当前请求来源IP地址(内网访问时可能一直为127.0.0.1), 使用nginx或其他负载均衡代理访问时, 依赖x-real-ipx-forwarded-for获取。

  • .body 当前请求的body, 首次调用需要使用await, 之后使用可不需要, 会从内存中读取。

方法

  • .header(key<String>) 读取头信息

    • key<String> [可选], 字段名, 不分大小写。 不传返回所有的字段。
  • .cookie(key<String>) 读取cookie

    • key<String> [可选], 字段名, 不传返回所有的cookie。