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

1、http的基本请求

cpp 复制代码
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请求的网址,可以通过该网站进行测试。

相关推荐
怪力乌龟3 小时前
go语言设计模式-适配器模式
设计模式·golang·适配器模式
喝养乐多长不高5 小时前
HTTPS加密原理详解
网络·网络协议·http·https·证书·非对称加密·对称加密
D-river6 小时前
【Academy】HTTP 请求走私 ------ HTTP request smuggling
网络·网络协议·安全·web安全·http·网络安全
螺旋式上升abc7 小时前
GO语言学习笔记
笔记·学习·golang
至暗时刻darkest9 小时前
go mod文件 项目版本管理
开发语言·后端·golang
银河小铁骑plus9 小时前
Go学习笔记:基础语法6
笔记·学习·golang
cheniie10 小时前
Go加spy++隐藏窗口
golang·隐藏窗口
YGGP11 小时前
【每日八股】Golang篇(二):关键字(上)
开发语言·后端·golang
ErizJ11 小时前
Golang | Gin(简洁版)
开发语言·golang·gin
程序员黄同学11 小时前
请谈谈 HTTP 中的安全策略,如何防范常见的Web攻击(如XSS、CSRF)?
前端·http·xss