当前位置:  开发笔记 > 编程语言 > 正文

golang如何写http请求

golang写http请求的方法:使用http.Newrequest方法,先生成http.client,再生成http.request,之后提交请求:client.Do(request)。

方式一 使用http.Newrequest

先生成http.client -> 再生成 http.request -> 之后提交请求:client.Do(request) -> 处理返回结果,每一步的过程都可以设置一些具体的参数,下面是一个最朴素最基本的例子:

//question ???将stdout重定向为response信息???
package main

import (
	"fmt"
	"io"
	"net/http"
	"os"
)

func main() {
    //生成client 参数为默认
	client := &http.Client{}
	
	//生成要访问的url
	url := "http://www.baidu.com"
	    
	//提交请求
	reqest, err := http.NewRequest("GET", url, nil)
	
	if err != nil {
		panic(err)
	}
	
	//处理返回结果
	response, _ := client.Do(reqest)
   
   //将结果定位到标准输出 也可以直接打印出来 或者定位到其他地方进行相应的处理
	stdout := os.Stdout
	_, err = io.Copy(stdout, response.Body)
   
   //返回的状态码
	status := response.StatusCode

	fmt.Println(status)

}

方式二 先生成client,之后用client.get/post..

client结构自己也有一些发送api的方法,比如client.get,client.post,client.postform..等等。基本上涵盖了主要的http请求的类型,通常不进行什么特殊的配置的话,这样就可以了,其实client的get或者post方法,也是对http.Newerequest方法的封装,里面还额外添加了req.Header.Set("Content-Type", bodyType)一般用的话,也是ok的。

更多go语言知识请关注go语言教程栏目。

以上就是golang如何写http请求的详细内容,更多请关注其它相关文章!

推荐阅读
落单鸟人
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有