欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

GO接收GET/POST参数及发送GET/POST请求的实例详解

程序员文章站 2022-04-09 12:06:03
golang: 接收get和post参数get 和 post 是我们最常用的两种请求方式,今天讲一讲如何在 golang 服务中,正确接收这两种请求的参数信息。处理get请求1.1 接收get请求po...

golang: 接收get和post参数

get 和 post 是我们最常用的两种请求方式,今天讲一讲如何在 golang 服务中,正确接收这两种请求的参数信息。

处理get请求

1.1 接收get请求

postman 发起get请求

GO接收GET/POST参数及发送GET/POST请求的实例详解

重新运行程序,请求postman,服务端控制台打印如下:

2020/12/04 11:33:55 running at port 9999 ...
2020/12/04 11:34:09 get: id=123

1.2 接收get请求

重新运行程序,请求postman,服务端控制台打印如下:

2020/12/04 12:37:17 running at port 9999 ...
2020/12/04 12:37:21 map[id:123 name:sina]

需要注意的是,这里的req.url.query()返回的是数组,因为go可以接收id=1&id=2这样形式的参数并放到同一个key下

接收post请求

在开发中,常用的 post 请求有两种,分别是 application/json 和 application/x-www-form-urlencoded,下面就来介绍一下这两种类型的处理方式。

1.1 接收application/x-www-form-urlencoded类型的post请求

postman 发起x-www-form-urlencoded请求

GO接收GET/POST参数及发送GET/POST请求的实例详解

重新运行程序,请求postman,服务端控制台打印如下:

2020/12/04 12:44:32 running at port 9999 ...
post form-urlencoded: username=李四, password=12

1.2 接收application/x-www-form-urlencoded类型的post请求

重新运行程序,请求postman,服务端控制台打印如下:

2020/12/04 12:49:40 running at port 9999 ...
2020/12/04 12:49:45 map[password:12 username:李四]

2 处理 application/json 请求

实际开发中,往往是一些数据对象,我们需要将这些数据对象以 json 的形式返回,下面我们就来添加一段代码:

json 结构
比如,请求了手机归属地的接口,json 数据返回如下:

思路是这样的:

1.先将 json 转成 struct。

2.然后 json.unmarshal() 即可。

json 转 struct ,自己手写就太麻烦了,有很多在线的工具可以直接用,我用的这个:

在左边贴上 json 后面就生成 struct 了。

用代码实现下:

postman 发起application/json 请求

GO接收GET/POST参数及发送GET/POST请求的实例详解

重新运行程序,访问页面,服务端控制台打印如下:

到此这篇关于go接收get/post参数及发送get/post请求的文章就介绍到这了,更多相关go接收get/post参数内容请搜索以前的文章或继续浏览下面的相关文章希望大家以后多多支持!