• go发送请求get|post


    golang要请求远程网页,可以使用net/http包中的client提供的方法实现。查看了官方网站有一些示例,没有太全面的例子,于是自己整理了一下

    get请求

    get请求可以直接http.Get方法,非常简单

    func httpGet() {
        resp, err := http.Get("http://www.01happy.com/demo/accept.php?id=1")
        if err != nil {
            // handle error
        }
    
        defer resp.Body.Close()
        body, err := ioutil.ReadAll(resp.Body)
        if err != nil {
            // handle error
        }
    
        fmt.Println(string(body))
    }

     

    post请求

    func httpPost() {
    	resp, err := http.Post("http://www.01happy.com/demo/accept.php",
    		"application/x-www-form-urlencoded",
    		strings.NewReader("name=cjb"))
    	if err != nil {
    		fmt.Println(err)
    	}
    
    	defer resp.Body.Close()
    	body, err := ioutil.ReadAll(resp.Body)
    	if err != nil {
    		// handle error
    	}
    
    	fmt.Println(string(body))
    }
    

      

    复杂的请求

    func httpDo() {
    	client := &http.Client{}
    
    	req, err := http.NewRequest("POST", "http://www.01happy.com/demo/accept.php", strings.NewReader("name=cjb"))
    	if err != nil {
    		// handle error
    	}
    
    	req.Header.Set("Content-Type", "application/x-www-form-urlencoded")
    	req.Header.Set("Cookie", "name=anny")
    
    	resp, err := client.Do(req)
    
    	defer resp.Body.Close()
    
    	body, err := ioutil.ReadAll(resp.Body)
    	if err != nil {
    		// handle error
    	}
    
    	fmt.Println(string(body))
    }
    

      

  • 相关阅读:
    PHP的几个常用加密函数
    sha1() 函数
    微信支付接口文档
    最强PostMan使用教程(1)
    用 Graphviz画神经网络图
    绘图工具graphviz学习使用
    maven添加oracle jdbc依赖
    httrack,webdup,WinHTTrack,WebZip
    过滤ASCII码中的不可见字符, ASCII三部分, 各控制字符详解, 去^@,^M
    报LinkageError的原因
  • 原文地址:https://www.cnblogs.com/zh718594493/p/15323799.html
Copyright © 2020-2023  润新知