Go语言编程从入门到精通,HTTP客户端,GET、POST、自定义、超时「建议收藏」

Go语言编程从入门到精通,HTTP客户端,GET、POST、自定义、超时「建议收藏」Go语言创建HTTP客户端,GET、POST、自定义、超时的处理1. GET请求10行:声明1个字符串变量,赋值一个URL11行:respons

Go语言创建HTTP客户端,GET、POST、自定义、超时的处理

1. GET请求

Go语言编程从入门到精通,HTTP客户端,GET、POST、自定义、超时「建议收藏」

10行:声明1个字符串变量,赋值一个URL

11行:response, err := http.Get(url),使用http包的Get方法发出Get请求。

15行:defer response.Body.Close()读取数据后,记得要关闭连接。Defer用法在之前学习过了。

16行:读取响应内容

17行:如果读取响应内容出错,就退出。

20行:通过log.Printf(“%s”, body)格式化输出内容

2. POST请求

Go语言编程从入门到精通,HTTP客户端,GET、POST、自定义、超时「建议收藏」

与GET请求不同的是12行和13行。

12行:构建一个*Reader类型,赋给变量post,注意的是`{“username”:”zhangssan”}`是元字符串。

13行:http.Post(url,”application/json”,post),第一个参数是url,是string类型,第二个参数是contentType,是string类型,第三个参数是提交的数据,是io.Reader类型。

14行:如果请求出错了,那么久打印错误日志并退出。

17行:读取数据后,关闭连接。

18行:读取响应内容

19行:如果读取出错,那么就退出。

22行:打印输出响应体内容。

3. 自定义HTTP请求

Go语言编程从入门到精通,HTTP客户端,GET、POST、自定义、超时「建议收藏」

11行:创建http的客户端

12行:request, err := http.NewRequest(“GET”, url, nil),构建请求,http.NewRequest的第一个参数为method方法(GET、POST等),类型是string,第二个参数是url ,请求的地址,类型是string,第三个是请求的内容,类型是 io.Reader,返回值有2部分,第一部分是*Request指针,第二个是请求错误的提示。

16行:Do是一个方法,用于发送请求并处理响应,参数只有1个,*Request的指针,返回值也是有2个,第一个是*Response的指针内容,第二个也是请求错误的提示。

4. 当访问超时时?

我们将上面的示例,简单修改一下就可以完成超时退出的功能。

Go语言编程从入门到精通,HTTP客户端,GET、POST、自定义、超时「建议收藏」

在13行增加了Timeout: time.Second * 3,就可以实现访问超出3秒报错的功能。

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。
如需转载请保留出处:http://bianchenghao.cn/4169.html

(0)
编程小号编程小号
上一篇 2022-12-26
下一篇 2022-12-26

相关推荐

发表回复

您的电子邮箱地址不会被公开。 必填项已用*标注