在fasthttp中获取请求参数键值

时间:2016-09-01 08:04:25

标签: http url go fasthttp

http://127.0.0.1:8080/x?haha=1

我希望获得类似ctx.QueryArgs().Get("haha")

的内容

是否可以使用golang的fasthttp包?

4 个答案:

答案 0 :(得分:3)

找到它

ctx.QueryArgs().Peek("haha")

命名选择是意料之外的。

答案 1 :(得分:1)

您可以使用 FormValue 方法检索自定义的 GET,POST PUT 参数:
 - GET (查询字符串,例如?user = a&pass = b);
 - POST,PUT 正文

从字面上看,来自文档:

FormValue返回与给定键关联的表单值。

在以下位置搜索

  • 查询字符串;
  • POST或PUT正文。

还有更多获取表格值的细粒度方法:

  • QueryArgs 用于从查询字符串获取值。
  • PostArgs 用于从POST或PUT正文获取值。
  • MultipartForm 用于从多部分表单中获取值。
  • FormFile 用于获取上传的文件。
token = string(ctx.FormValue("token"))

文档: https://godoc.org/github.com/valyala/fasthttp#RequestCtx.FormValue

答案 2 :(得分:1)

使用Peek和PeekMulti

?haha=1
ctx.QueryArgs().Peek("haha")

?haha=1&haha=2
ctx.QueryArgs().PeekMulti("haha")

此处声明了一些有用的方法: https://github.com/valyala/fasthttp/blob/a1cfe58ca86648c6701f1cb7e8b1587348dd5b9f/args.go#L245

答案 3 :(得分:0)


没有ctx但有export default values => ( [ validateFullName, validateServicePresence, validatePhoneField, validateOrganizationName, validateInn, validateEmailField, validateManagerEmail, validateComment, validateAgreement, ].reduce((currentErrors, validator) => { const validationResult = validator(values); return { ...currentErrors, ...validationResult, }; }, {}) ); 时的另一个选择是:

ctx.Request