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

【一、http】go的http基本请求方法

1、http的基本请求

package main

import (
	"bytes"
	"fmt"
	"io"
	"net/http"
	"net/url"
)


func post(){
	r, err := http.Post("http://httpbin.org/post", "", nil)
	if err != nil {
		fmt.Println("ss")
	}
	defer r.Body.Close()
	content, err := io.ReadAll(r.Body)
	if err != nil {
		fmt.Println("ss")
	}
	fmt.Printf("%s", content)
}

func get(){
	r, err := http.Get("http://httpbin.org/get")
	if err != nil {
		fmt.Println("ss")
	}
	defer r.Body.Close()
	content, err := io.ReadAll(r.Body)
	if err != nil {
		fmt.Println("ss")
	}
	fmt.Printf("%s", content)
}

//http只提供了get和post的基本请求,其他的情况不存在,因此,需要自己发起请求,构造方法
func put(){
	requst, err := http.NewRequest(http.MethodPut, "http://httpbin.org/put", nil)
	if err != nil {
		fmt.Println("ss")
	}
	r, err := http.DefaultClient.Do(requst)
	if err != nil {
		fmt.Println("ss")
	}

	defer r.Body.Close()
	content, err := io.ReadAll(r.Body)
	if err != nil {
		fmt.Println("ss")
	}
	fmt.Printf("%s", content)

}

func deletets(){
	requst, err := http.NewRequest(http.MethodDelete, "http://httpbin.org/delete", nil)
	if err != nil {
		fmt.Println("ss")
	}
	r, err := http.DefaultClient.Do(requst)
	if err != nil {
		fmt.Println("ss")
	}

	defer r.Body.Close()
	content, err := io.ReadAll(r.Body)
	if err != nil {
		fmt.Println("ss")
	}
	fmt.Printf("%s", content)

}

其中地址http://httpbin.org 是国外提供的一个验证http请求的网址,可以通过该网站进行测试。
在这里插入图片描述

http://www.dtcms.com/a/3587.html

相关文章:

  • Python用RoboBrowser库写一个通用爬虫模版
  • AndroidAuto PCTS A118解决杂音问题
  • 升级 MacOS 系统后,playCover 内游戏打不开了如何解决
  • 苹果相机怎么磨皮 苹果手机怎么磨皮
  • 使用 uni-app 开发项目,日期和时间如何格式化?
  • HTTPS的加密方式超详细解读
  • 数据结构-邻接表广度优先搜索(C语言版)
  • 机器学习中的关键组件
  • OpenCV官方教程中文版 —— 图像修复
  • 利用MySQL玩转数据分析之基础篇
  • Proteus仿真--12864LCD显示计算器键盘按键实验(仿真文件+程序)
  • 学习小结,学而时习之,坚持学习之,温顾学习之
  • Webpack的Tree Shaking。它的作用是什么?
  • Docker Stack部署应用详解+Tomcat项目部署详细实战
  • Linux ----------------------- 文本处理工具
  • C语言 || volatile
  • 云安全-云原生k8s攻击点(8080,6443,10250未授权攻击点)
  • 【SpringBoot笔记42】SpringBoot集成knife4j生成接口文档
  • 【3D图像分割】基于Pytorch的VNet 3D图像分割5(改写数据流篇)
  • 【RabbitMQ】RabbitMQ 消息的堆积问题 —— 使用惰性队列解决消息的堆积问题
  • List 接口常用实现类底层分析
  • 『CV学习笔记』图像超分辨率等图像处理任务中的评价指标PSNR(峰值信噪比)
  • Modbus java代码实例
  • 小程序如何设置用户同意服务协议并上传头像和昵称
  • Ubuntu 增加服务 比如openfire
  • elasticsearch索引按日期拆分
  • 聊天室的创建
  • 后端设计PG liberty的作用和增量式生成
  • 14、$axios异步加载数据asyncData
  • hdlbits系列verilog解答(always块case语句)-33