ThinkChat2.0新版上线,更智能更精彩,支持会话、画图、视频、阅读、搜索等,送10W Token,即刻开启你的AI之旅 广告
Iris 的 Context 有两个方法可以返回 `net/http` 标准 `http.ResponseWriter` 和 `http.Request` 值, 正如我们在前面的章节中已经提到的那样。 * Context.Request() * Context.ResponseWriter() 然而,除了 Iris Context 提供的唯一的 iris 功能和辅助方法之外,为了简化开发, 我们还提供了一些现有 `net/http` 功能的封装。 这些是当你使用 URL 查询字符串的时候,能够给你帮助的完整方法列表。 ``` // URLParam 如果url参数存在,则返回true,否则返回false。 URLParamExists(name string) bool // URLParamDefault 从请求中返回get参数, //如果未找到,则返回 "def"。 URLParamDefault(name string, def string) string // URLParam 从请求中返回 get 参数(如果有)。 URLParam(name string) string // URLParamTrim 返回带有以下内容的 url 查询参数 // 并从请求中删除的尾随空格。 URLParamTrim(name string) string // URLParamTrim(原文就是 URLParamTrim,总感觉应该是 URLParamEscape,不过关系不大。) 从请求中返回转义的url查询参数。 URLParamEscape(name string) string // URLParamInt 以请求中的int值形式返回url查询参数, // 返回-1,如果解析失败,则返回错误。 URLParamInt(name string) (int, error) // URLParamIntDefault t将url查询参数作为请求中的int值返回, // 如果未找到或解析失败,则返回"def" 。 URLParamIntDefault(name string, def int) int // URLParamInt32Default 将 url 查询参数作为来自请求的 int32 值返回, // 如果未找到或解析失败,则返回 "def" 。 URLParamInt32Default(name string, def int32) int32 // URLParamInt64 将 url 查询参数作为来自请求的 int64 值返回, // 返回-1,如果解析失败,则返回错误。 URLParamInt64(name string) (int64, error) // URLParamInt64Default 从请求中返回 url 查询参数作为 int64 值, // 如果未找到或解析失败,则返回 "def" 。 URLParamInt64Default(name string, def int64) int64 // URLParamFloat64 从请求中返回 url 查询参数作为 float64 值, // 返回-1,如果解析失败,则返回错误。 URLParamFloat64(name string) (float64, error) // URLParamFloat64Default从请求中返回 url 查询参数作为 float64 值, // 如果未找到或解析失败,则返回 "def" 。 URLParamFloat64Default(name string, def float64) float64 // URLParamBool 以请求中的布尔值返回 url 查询参数, // 如果解析失败或未找到,则返回错误。 URLParamBool(name string) (bool, error) // URLParams 返回一个GET查询参数的映射,如果有多个,则以逗号分隔 // 如果找不到任何内容,则返回一个空映射。 URLParams() map[string]string ``` 使用现有的基础请求对象来解析查询字符串参数。 该请求响应的URL匹配: /welcome?firstname=Jane&lastname=Doe. * `ctx.URLParam("lastname") == ctx.Request().URL.Query().Get("lastname")` 示例代码: ``` app.Get("/welcome", func(ctx iris.Context) { firstname := ctx.URLParamDefault("firstname", "Guest") lastname := ctx.URLParam("lastname") ctx.Writef("Hello %s %s", firstname, lastname) }) ```