go tcp发送网络请求

Posted zhangxiaoj

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了go tcp发送网络请求相关的知识,希望对你有一定的参考价值。

//发送http请求
package main

import (
	"fmt"
	"net"
	"io"
)

func main () 
	//使用Dial建立连接
	conn, err := net.Dial("tcp", "www.baidu.com:80")
	if err != nil 
		fmt.Println("error dialing", err.Error())
		return
	

	defer conn.Close()

	msg := "GET / HTTP/1.1\r\n"
	msg += "Host:www.baidu.com\r\n"
	msg += "Connection: close\r\n"
	msg += "\r\n\r\n"

	_, err = io.WriteString(conn, msg)

	if err != nil 
		fmt.Println("write string failed", err)
		return
	

	buf := make([]byte, 4096)

	for 
		count, err := conn.Read(buf)

		if err != nil 
			break
		

		fmt.Println(string(buf[0:count]))
	

  

以上是关于go tcp发送网络请求的主要内容,如果未能解决你的问题,请参考以下文章

02 网络面经:一个TCP连接可以发送多少个HTTP请求?

02 网络面经:一个TCP连接可以发送多少个HTTP请求?

GO语言网络编程

计算机网络-TCP连接

客户端发起一个网络请求都经历了啥

网络通讯