zoukankan      html  css  js  c++  java
  • Go语言之进阶篇服务器如何知道用户需要什么资源

    1、服务器如何知道用户需要什么资源

    示例:

    package main
    
    import (
    	"fmt"
    	"net"
    )
    
    func main() {
    	//监听
    	listener, err := net.Listen("tcp", ":8000")
    	if err != nil {
    		fmt.Println("Listen err = ", err)
    		return
    	}
    
    	defer listener.Close()
    
    	//阻塞等待用户的连接
    	conn, err1 := listener.Accept()
    	if err1 != nil {
    		fmt.Println("Accept err1 = ", err1)
    		return
    	}
    
    	defer conn.Close()
    
    	//接收客户端的数据
    	buf := make([]byte, 1024*4)
    	n, err2 := conn.Read(buf)
    	if n == 0 {
    		fmt.Println("Read err = ", err2)
    		return
    	}
    
    	fmt.Printf("#%v#", string(buf[:n]))
    
    }
    

    执行结果:

    #GET /mike.html HTTP/1.1  #接文件名称
    Host: 127.0.0.1:8000
    Connection: keep-alive
    Cache-Control: max-age=0
    Upgrade-Insecure-Requests: 1
    User-Agent: Mozilla/5.0 (Windows NT 6.1; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/71.0.3578.98 Safari/537.36
    Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,image/apng,*/*;q=0.8
    Accept-Encoding: gzip, deflate, br
    Accept-Language: zh-CN,zh;q=0.9
    

      

  • 相关阅读:
    Python mutilprocessing Processing 父子进程共享文件对象?
    BZOJ4836: [Lydsy1704月赛]二元运算
    博弈论刷题记录
    manacher(无讲解)
    UOJ_407_【IOI2018】狼人
    BZOJ_3935_Rbtree
    dsu on tree(无讲解)
    BZOJ_3744_Gty的妹子序列
    后缀数组(无讲解)
    虚树(无讲解)
  • 原文地址:https://www.cnblogs.com/nulige/p/10323014.html
Copyright © 2011-2022 走看看