1、使用http.Get发送get请求

package mainimport ("fmt""io/ioutil""net/http"
)func main() {resp, err := http.Get("https://www.baidu.com")if err != nil {panic(err)}defer resp.Body.Close()body, err := ioutil.ReadAll(resp.Body)if err != nil {panic(err)}fmt.Println(string(body))
}

2、使用http.Post发送post请求

package mainimport ("fmt""io/ioutil""net/http""strings"
)func main() {resp, err := http.Post("https://www.baidu.com", "application/x-www-form-urlencoded", strings.NewReader("wd=csdn"))if err != nil {panic(err)}defer resp.Body.Close()body, err := ioutil.ReadAll(resp.Body)if err != nil {panic(err)}fmt.Println(string(body))
}

3、使用http.PostForm发送post请求

package mainimport ("fmt""io/ioutil""net/http""net/url""strings"
)func main() {resp, err := http.PostForm("https://www.baidu.com", url.Values{"wd": {"csdn"},})if err != nil {panic(err)}defer resp.Body.Close()body, err := ioutil.ReadAll(resp.Body)if err != nil {panic(err)}fmt.Println(string(body))
}

4、复杂请求可以使用http.Client的Do方法(比如需要设置header、cookie等)

package mainimport ("fmt""io/ioutil""net/http"
)func main() {// 通过get请求https://www.baidu.com/s?wd=csdnreq, err := http.NewRequest(http.MethodGet, "https://www.baidu.com/s", nil)if err != nil {panic(err)}// 设置headerreq.Header.Set("User-Agent","Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/92.0.4515.159 Safari/537.36")// 请求参数q := req.URL.Query()q.Add("wd", "csdn")req.URL.RawQuery = q.Encode()c := http.Client{}resp, err := c.Do(req)if err != nil {panic(err)}defer resp.Body.Close()body, err := ioutil.ReadAll(resp.Body)if err != nil {panic(err)}fmt.Println(string(body))
}

参考:https://studygolang.com/articles/2355

golang发送http请求相关推荐

  1. go 发送http请求; Golang 解析JSON 篇

    https://www.runoob.com/go/go-fmt-sprintf.html go 发送http请求: package mainimport ("io/ioutil" ...

  2. golang使用http发送graphql请求

    请求内容: query格式: query UnitList($Ids: String!, $offset: Int! ){UnitList(searchParams: {Ids: $Ids, offs ...

  3. ajax发送动态字符传,如何发送ajax请求文件与其他字符串的变量?

    我想创建ajax调用并发送数据与文件和其他变量,我也使用django,如果它的帮助.如何发送ajax请求文件与其他字符串的变量? 我尝试: js文件: $("#save-new-reques ...

  4. jquery发送put请求_浅谈GET,POST,PUT发送请求

    一般我们在浏览器的地址栏输入网址回车后,发送的是GET请求 当用表单提交时(最普遍的是用户登录),我们可以指定是GET还是POST请求,这里需要注意的是有的浏览器并不支持PUT请求,那后台restfu ...

  5. 使用rest_framework写api接口的一些注意事项(axios发送ajax请求)

    1. 类继承GenericAPIView,定义queryset 印象深刻的事: 由于原来对于继承关系不太清楚,写接口 APIView/泛指GenericAPIView不太关注queryset 没有设置 ...

  6. Vue之axios发送Ajax请求

    2.10 axios发送ajax请求 axios github 2.10.1 准备工程 创建一个django工程,例如 login.创建完成之后,再创建一个子应用,例如users.最后再设置一下模板文 ...

  7. 爬虫之requests模块发送post请求

    爬虫之requests模块发送post请求 思考:哪些地方我们会用到POST请求? 登录注册( 在web工程师看来POST 比 GET 更安全,url地址中不会暴露用户的账号密码等信息) 需要传输大文 ...

  8. java post xmll_HttpClient发送Post请求,内容格式为xml,并获取响应内容

    ChannelDistributor.xml 内容如下: yisou abcd1234 10010000 00 1).HttpClient发送Post请求,内容格式为xml,并获取响应内容 impor ...

  9. PHP爬取post网页数据,php curl发送post请求爬取webService接口数据简单实例

    header('Content-Type: text/html;charset=utf-8'); /** * 使用curl发送post请求 * @param $url * @param string ...

最新文章

  1. 物联网时代传感器厂商竞争格局揭秘
  2. 配置Linux—LVS (DR)
  3. 垃圾回收③---垃圾回收器
  4. 充电桩前端对接的一点总结
  5. 充满艺术范儿!艺术感在线的界面欣赏
  6. movelast对数据记录数有要求吗_客户验厂,电脑坏了,考勤记录数据可以自动生成找回来吗?...
  7. android报错自动重启,Android Studio常见报错及处理办法
  8. nodejs后台系列--第四篇--koa
  9. linux更改文件系统格式,只安装Linux系统,把硬盘全部格式化成Linux文件系统
  10. 如何查计算机硬盘型号,win10电脑的硬盘型号如何查看
  11. 软件设计师2022记录
  12. 在高分辨率或者扩展屏下微信截图出现放大问题的解决
  13. 高新技术八大领域详细分类
  14. 幼儿园计算机培训心得,幼儿园心得体会范文
  15. 【科研思考】如何做学术研究?—— 我的方法论
  16. IIS管理器使用-修改根节点名称
  17. 【单片机】嵌入式硬核必备知识:合并bin文件,bin转换hex文件
  18. 使用VMware 安装mac os系统 遇到鼠标键盘无法使用的问题
  19. centos7 默认中文字体_如何更换CentOS(Linux)系统默认字体?
  20. H3C交换机Console密码忘记处理方法

热门文章

  1. 华为watch 3 Pro和GT3 Pro的区别 哪个好
  2. 235、一个带宽如何连接两个路由器?详解两种方法
  3. Hector-SLAM初使用
  4. 惠租车挪威租车旅游攻略
  5. redis阻塞队列 java,Redis阻塞/非阻塞队列
  6. 说说websocket
  7. 电动车动力性计算MATLAB程序,matlab计算汽车动力性经济性(已编好程序).pdf
  8. android 定时拍照并发送微博
  9. 数据库查询指定行的数据
  10. 英超体育fun.乐联赛 纽卡斯尔对战伯恩茅斯 伤病太多 纽卡很难