来源:未知 时间:2018-08-31 17:46 作者:小飞侠 阅读:次
[导读] golang之Http协议Get请求 packagemainimport(net/httpfmtio/ioutil)funcmain(){get()}funcget(){resp,err:=http.Get(http://www.baidu.com)iferr!=nil{//如果没有获取到url数据会返回一个error类型错误fmt.Println(error=,err,;)}defe...
golang之Http协议Get请求 package main import ( "net/http" "fmt" "io/ioutil" ) func main() { get() } func get(){ resp,err := http.Get("http://www.baidu.com") if err!=nil { //如果没有获取到url数据 会返回一个error 类型错误 fmt.Println("error=",err,";") } defer resp.Body.Close() //提取响应头数据 b,err:=ioutil.ReadAll(resp.Body) //将字节切片转成成String 输出 fmt.Print(string(b)) } 获取百度网页数据 转化成string的形式输出出来. defer 关键字是总会执行,类似于java try catch finally 代码块 golang之Http协议Post请求 import ( "net/http" "net/url" "fmt" "io/ioutil" ) func main() { post() } func post() { //这是一个Post 参数会被返回的地址 strinUrl:="http://localhost:8080/aaa" resopne,err:= http.PostForm(strinUrl,url.Values{"num":{"456"}}) if err !=nil { fmt.Println("err=",err) } defer func() { resopne.Body.Close() fmt.Println("finish") }() //提取数据 body,err:=ioutil.ReadAll(resopne.Body) if err!=nil { fmt.Println(" post err=",err) } fmt.Println(string(body)) } 运行结果:运行的结果;Key = num, Value = [456] 服务器是我用java语言编写的,服务器会监听8080端口,将客户端提交的数据返回给客户端。goHttp代码量相对于java来讲还是很少的。 通过golang的ioutil包可以直接Http响应头提取到切片[]slice 里面。最后将[]byte 转成string输出 |
自学PHP网专注网站建设学习,PHP程序学习,平面设计学习,以及操作系统学习
京ICP备14009008号-1@版权所有www.zixuephp.com
网站声明:本站所有视频,教程都由网友上传,站长收集和分享给大家学习使用,如由牵扯版权问题请联系站长邮箱904561283@qq.com