Fork me on GitHub
随笔 - 215  文章 - 13  trackbacks - 0
<2017年2月>
2930311234
567891011
12131415161718
19202122232425
2627281234
567891011


专注即时通讯及网游服务端编程
------------------------------------
Openresty 官方模块
Openresty 标准模块(Opm)
Openresty 三方模块
------------------------------------
本博收藏大部分文章为转载,并在文章开头给出了原文出处,如有再转,敬请保留相关信息,这是大家对原创作者劳动成果的自觉尊重!!如为您带来不便,请于本博下留言,谢谢配合。

常用链接

留言簿(1)

随笔分类

随笔档案

相册

Awesome

Blog

Book

GitHub

Link

搜索

  •  

积分与排名

  • 积分 - 210445
  • 排名 - 118

最新评论

阅读排行榜

<strong>// 简单直接的GET请求</strong>
func httpGet() {
    resp, err :
= http.Get("http://www.baidu.com")
    
if err != nil {
        
// handle error
    }
 
    defer resp.Body.Close()
    body, err :
= ioutil.ReadAll(resp.Body)
    
if err != nil {
        
// handle error
    }
 
    fmt.Println(string(body))
}

<strong>// POST请求 -- 使用http.Post()方法</strong>
func httpPost() {
    resp, err :
= http.Post("http://www.baidu.com",
        
"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))
}
Tips:使用这个方法的话,第二个参数要设置成”application
/x-www-form-urlencoded”,否则post参数无法传递。

<strong>// POST请求 -- 使用http.PostForm()方法</strong>
func httpPostForm() {
    resp, err :
= http.PostForm("http://www.baidu.com",
        url.Values{
"key": {"Value"}, "id": {"123"}})
 
    
if err != nil {
        
// handle error
    }
 
    defer resp.Body.Close()
    body, err :
= ioutil.ReadAll(resp.Body)
    
if err != nil {
        
// handle error
    }
 
    fmt.Println(string(body))
}

<strong>// 复杂的请求(设置头参数、cookie之类的数据),可以使用http.Client的Do()方法</strong>
func httpDo() {
    client :
= &http.Client{}
 
    req, err :
= http.NewRequest("POST""http://www.baidu.com", 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))
}

http://studygolang.com/articles/2355
posted on 2017-02-09 16:25 思月行云 阅读(1407) 评论(0)  编辑 收藏 引用 所属分类: Golang

只有注册用户登录后才能发表评论。
网站导航: 博客园   IT新闻   BlogJava   知识库   博问   管理