gout v0.2.6 版本更新,Go 实现的 http RESTful 客户端和 benchmark lib

栏目: 软件资讯 · 发布时间: 4年前

内容简介:项目地址 https://github.com/guonaihong/gout https://gitee.com/guonaihong/gout 本次更新 绑定数据支持校验 package main import ( "fmt" "time" "github.com/gin-gonic/gin" "github.com/guo...

项目地址

https://github.com/guonaihong/gout

https://gitee.com/guonaihong/gout

本次更新

绑定数据支持校验

package main

import (
	"fmt"
	"time"

	"github.com/gin-gonic/gin"
	"github.com/guonaihong/gout"
)

type bodyJSON struct {
	Code int `valid:"required"`
}

func server() {
	r := gin.Default()
	r.GET("/have", func(c *gin.Context) {
		c.JSON(200, gin.H{"code": 200})
	})

	r.GET("/empty", func(c *gin.Context) {

	})

	r.Run()
}

func main() {
	go server()

	time.Sleep(time.Second / 100)

	b := bodyJSON{}

	err := gout.GET(":8080/have").BindJSON(&b).Do()
	fmt.Println(b, err)

	b = bodyJSON{}
	// 这里会报错, 因为bodyJSON里面的值为空, 到达数据校验的目的
	err = gout.GET(":8080/empty").BindJSON(&b).Do()
	fmt.Println(err)
}

feature

  • 支持设置 GET/PUT/DELETE/PATH/HEAD/OPTIONS
  • 支持设置请求 http header(可传 struct,map,array,slice 等类型)
  • 支持设置 URL query(可传 struct,map,array,slice,string 等类型)
  • 支持设置 json 编码到请求 body 里面(可传struct, map, string, []byte 等类型)
  • 支持设置 xml 编码到请求 body 里面(可传struct, string, []byte 等类型)
  • 支持设置 yaml 编码到请求 body 里面(可传struct, map, string, []byte 等类型)
  • 支持设置 protobuf 编码到请求 body里面(可传struct)
  • 支持设置 form-data(可传 struct, map, array, slice 等类型)
  • 支持设置 x-www-form-urlencoded(可传 struct,map,array,slice 等类型)
  • 支持设置 io.Reader,uint/uint8/uint16...int/int8...string...[]byte...float32,float64 至请求 body 里面
  • 支持解析响应body里面的json,xml,yaml至结构体里(BindJSON/BindXML/BindYAML)
  • 支持解析响应body的内容至io.Writer, uint/uint8...int/int8...string...[]byte...float32,float64
  • 支持解析响应header至结构体里
  • 支持接口性能benchmark,可控制压测一定次数还是时间,可控制压测频率
  • 支持retry-backoff,可以指定重试条件
  • 支持发送裸http数据包
  • 支持导出curl命令
  • 传入自定义*http.Client
  • 支持请求中间件(https://github.com/antlabs/gout-middleware)
  • 支持设置chunked数据格式发送
  • 支持body, header的数据校验
  • 等等更多

以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,也希望大家多多支持 码农网

查看所有标签

猜你喜欢:

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

场景革命

场景革命

吴声 / 机械工业出版社 / 2015-7-1 / 59.00元

How-old如何引爆了朋友圈的全民脑洞狂欢? Uber是打车软件,还是入口? 为什么“自拍”会成为一个产业? 美团如何成为电影票房冠军的幕后推手? 商业进入了新物种时代,超级平台之后,PC时代以降,IoT(万物互联)崛起之时,到底什么是新的入口?一系列的颠覆使我们开始正视移动互联时代的品类创造方法,一场孕育已久的场景革命正在发生。 《场景革命:重构人与商业的连接》为......一起来看看 《场景革命》 这本书的介绍吧!

RGB转16进制工具
RGB转16进制工具

RGB HEX 互转工具

随机密码生成器
随机密码生成器

多种字符组合密码

MD5 加密
MD5 加密

MD5 加密工具