当前位置: 首页 > news >正文

做调查问卷网站惠州h5网站建设

做调查问卷网站,惠州h5网站建设,企业管理咨询论文,网站开发公司erp目录 发送Get请求 响应信息 拓展 资料获取方法 发送Get请求 使用Golang发送get请求很容易,我们还是使用http://httpbin.org作为服务端来进行演示。 package mainimport ("bytes""fmt""log""net/http""net/url&qu…

目录

发送Get请求

响应信息

拓展

 资料获取方法


发送Get请求

使用Golang发送get请求很容易,我们还是使用http://httpbin.org作为服务端来进行演示。

package mainimport ("bytes""fmt""log""net/http""net/url""reflect"
)func main() {resp, err := http.Get("http://httpbin.org/get?name=Detector")if err != nil {log.Println(err)return}defer resp.Body.Close()headers := resp.Header// headers 打印报文头部信息for k, v := range headers {fmt.Printf("%v, %v\n", k, v) // %v 打印interfac{}的值}// 打印响应信息内容fmt.Printf("响应状态:%s,响应码: %d\n", resp.Status, resp.StatusCode)fmt.Printf("协议:%s\n", resp.Proto)fmt.Printf("响应内容长度: %d\n", resp.ContentLength)fmt.Printf("编码格式:%v\n", resp.TransferEncoding) // 未指定时为空fmt.Printf("是否压缩:%t\n", resp.Uncompressed)fmt.Println(reflect.TypeOf(resp.Body)) // *http.gzipReaderfmt.Println(resp.Close)buf := bytes.NewBuffer(make([]byte, 0, 512))length, _ := buf.ReadFrom(resp.Body)fmt.Println(len(buf.Bytes()))fmt.Println(length)fmt.Println(string(buf.Bytes()))
}

响应信息

λ go run goHttp.go
Access-Control-Allow-Credentials, [true]
Via, [1.1 vegur]
Connection, [keep-alive]
Server, [gunicorn/19.9.0]
Date, [Tue, 18 Sep 2018 02:25:16 GMT]
Content-Type, [application/json]
Content-Length, [271]
Access-Control-Allow-Origin, [*]
"响应状态":200 OK,响应码: 200
"协议":HTTP/1.1
"响应内容长度": 271
"编码格式":[]
"是否压缩":false
*http.bodyEOFSignal
false
271
271
{"args": {"name": "Detector"},"headers": {"Accept-Encoding": "gzip","Connection": "close","Host": "httpbin.org","User-Agent": "Go-http-client/1.1"},"origin": "14.152.49.250","url": "http://httpbin.org/get?name=Detector"
}

更多的响应内容我们查看安装路径的net包中Response struct 的信息,里面有详细的注释,参考路径:C:\Go\src\net\http\response.go:

拓展

用过Python的同学都知道,Python的requests发送get请求时是可以直接传递字典的(dict/map)的,比如:

#! /usr/bin/python
import requestsa = {"name": "bingo", "age": "18", "location": "shenzhen"}name = {"name": "Detector"}
resp = requests.get("http://httpbin.org/get", params=a)
print(resp.text)

响应信息:

{"args": {"age": "18", "location": "shenzhen", "name": "bingo"}, "headers": {"Accept": "*/*", "Accept-Encoding": "gzip, deflate", "Connection": "close", "Host": "httpbin.org", "User-Agent": "python-requests/2.18.4"}, "origin": "14.152.49.250", "url": "http://httpbin.org/get?name=bingo&age=18&location=shenzhen"
}

那么在golang中有没有想过的方法呢,答案是有的,但是只有一个半成品。

C:\Go\src\net\url\url.go中我们可以看到一个结构体type Values map[string][]string,他有一个Encode()方法可以把key:value键值对转化为key=value&key=value的形式:

package mainimport ("fmt""io/ioutil""log""net/http""net/url"
)func main() {name := url.Values{"name": {"bingo"}, "age": {"18"}, "local": {"shenzhen"}}param := name.Encode()url := fmt.Sprintf("http://httpbin.org/get?%s", param)fmt.Println(url)resp, err := http.Get(url)if err != nil {log.Println(err)return}defer resp.Body.Close()body, err := ioutil.ReadAll(resp.Body)fmt.Println(string(body))
}

输出:

http://httpbin.org/get?age=18&local=shenzhen&name=bingo
{"args": {"age": "18", "local": "shenzhen", "name": "bingo"}, "headers": {"Accept-Encoding": "gzip", "Connection": "close", "Host": "httpbin.org", "User-Agent": "Go-http-client/1.1"}, "origin": "103.84.19.17", "url": "http://httpbin.org/get?age=18&local=shenzhen&name=bingo"
}

考虑到篇幅,我们把发送Get、Post单独出来。我们在下一篇一起学习怎么发送Post请求。


 资料获取方法

【留言777】

各位想获取源码等教程资料的朋友请点赞 + 评论 + 收藏,三连!

三连之后我会在评论区挨个私信发给你们~

http://www.yayakq.cn/news/38108/

相关文章:

  • 注册网站查询官网广州建设品牌网站
  • flash成品网站怎么向国外打广告
  • 门户网站开发怎么收费优秀网站要素
  • 承德企业网站建设阿里云建站
  • php 网站开发360网站后台 清理缓存
  • 建设一个网站费用vs2015网站开发
  • 建网站的大公司2023年专业招标时间
  • 卖挂的网站怎么做网站关键词抓取
  • 全国十大装修公司seo排名优化推广教程
  • 网站优化报价网页编辑器安卓版
  • 网站魔板大全阿里wordpress
  • 适合女生做的网站织梦网站地图
  • 萝岗高端网站建设合肥网站公司哪家好
  • 建设银行信用卡申请官方网站优秀网站设计作品分析
  • 辽宁省建设厅证书查询网站类似好123门户网站开发复杂么
  • 网站运营推广公司网站浏览器兼容性问题吗
  • 软件专业做学校网站论文怎么选题新闻单位建设网站的意义
  • 做ps合成的网站北京网站设计公司新
  • 河北省唐山市建设规划局的网站房地产建设项目网站
  • 做行业网站能赚钱吗莆田seo推广公司
  • 品牌网站建设 磐石网络官方网站黑群晖Wordpress
  • 沙河口网站建设山西省建设工程招投标监督网站
  • 买了个网站后怎么做的房产app平台有哪些
  • 模拟购物网站开发项目wordpress高亮代码转义
  • 宁波做网站建设推广实业有限公司网站怎么做
  • 合肥网站建设渠道wordpress 有必要静态化
  • 中国住房城乡建设部网站中山 在门户网站推广
  • 怎么建设只要注册就赚钱的网站如何申请空间
  • 设计企业门户网站零元开店的电商平台
  • 吉林门户网站建设wordpress文章内容标签做关键词