golang接收 post和get请求参数处理

golang接收 post和get请求

1、golang中获取请求接口中数据(GET)

方式一: API参数 ctx.Param(name string)或者ctx.Params.ByName(name string)
前端请求为:

	"http://localhost:8080/api/book/paging/"+this.pageNum+"/"+this.pageSize
	//形式为:"http://localhost:8080/api/book/paging/2/2

此时后端路由写为:

	r.GET("/api/book/paging/:page_num/:page_size",controller.Paging)

后端接收路径中参数:

	pageSize,_:=strconv.Atoi(ctx.Param("page_size"))//它是下面的简写
	pageNum,_:=strconv.Atoi(ctx.Params.ByName("page_num"))

方式二:URL参数 ctx.Query(name string)
前端请求为:

	"http://localhost:8080/api/book/paging?page_num="+this.pageNum+"&page_size="+this.pageSize
	//形式为:"http://localhost:8080/api/book/paging?page_num=2&page_size=2

此时后端路由写为:

	r.GET("/api/book/paging",controller.Paging)

后端接收路径中参数:

	pageSize,_:=strconv.Atoi(ctx.Query("page_size"))
	pageNum,_:=strconv.Atoi(ctx.Query("page_num"))

2、golang中获取请求接口中数据(POST)

方式1:

	var requestUser=model.User{}
	_=ctx.Bind(&requestUser)
	//获取参数
	telephone:=requestUser.Telephone
	password:=requestUser.Password

方式2:

	//使用map获取请求的参数
	var requestMap=make(map[string]string)
	_ = json.NewDecoder(ctx.Request.Body).Decode(&requestMap)

方式3:

	var requestRegister=model.User{}
	json.NewDecoder(ctx.Request.Body).Decode(&requestRegister)

你可能感兴趣的:(笔记,golang)