Golang HTTP Server 分析(1) -- Overview

Golang 精简直观的设计,让Web 开发和写 print ”Hello World”毫无二致。同时也让我有机会一窥 HTTP Server 的设计与实现。至此,以前Tomcat,  Apache 等web 容器给我的神秘感一扫而光。

 

1. 基础知识

HTTP Server的目的即是实现HTTP Protocol, 下面我们简要介绍一下HTTP Protocol。

HTTP报文由一行行的简单字符串组成。HTTP报文都是纯文本,是Web信息传递的载体。下面由一个简单场景来表示HTTP报文格式。

技术分享

第一步:用户输入信息 username=harry&password=1234,浏览器向http://localhost:8080/login发送POST 请求,发送报文为

POST /login HTTP/1.1

HOST: localhost:8080/login

Accept: text/html

 

username=yasun&password=1234

 

第二步:服务器返回登录后个人博客信息的页面信息,发送Response 报文为

 

 

第三步:用户点击Blog 1,  浏览器发送Get 请求

 

2. 设计思路

郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。