JavaWeb:Web与HTTP协议简介

JavaWeb:Web与HTTP协议简介

Web的概念

  • 什么是Web:
    • Web是网络上使用最广泛的分布式应用架构
    • 旨在共享分布在网络上的各个Web服务器中的所有互相连接的信息
  • 三个特征:
    • HTML来表达信息,以及建立信息与信息之间的链接。
    • 用统一资源定位技术URL来实现网络上信息的准确定位
    • 用网络应用层协议HTTP规范浏览器与Web服务器之间的通信过程
  • WEB的发展历程:略。

HTTP协议简介

  • 什么是HTTP协议:
    • HTTP(Hypertext Transfer Protocol,超文本传输协议)。
    • 关于如何在网络上传输HTML文档的协议
    • HTTP协议规定了Web的基本运作过程浏览器与Web服务器之间的通信细节
  • 分层网络体系架构图:
    • HTTP协议位于应用层,建立在TCP/IP的协议之上。
    • HTTP协议采用可靠的TCP连接,默认为80端口。
  • HTTP协议规定了Web的基本运作过程(基于客户/服务器通信模式)
  • HTTP请求格式:
POST /Servlet/HelloServlet HTTP/1.1 请求方法 URI HTTP协议
Host: 127.0.0.1:8080
User-Agent: Mozilla/5.0 (Windows NT 10.0; WOW64; rv:47.0) Gecko/20100101 Firefox/47.0
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8
Accept-Language: zh-CN,zh;q=0.8,en-US;q=0.5,en;q=0.3  浏览器所用语言
Accept-Encoding: gzip, deflate
Referer: http://127.0.0.1:8080/hello.html
Connection: keep-alive
Content-Type: application/x-www-form-urlencoded
Content-Length: 59
 
username=986836840&password=zy986836840&submit=%B5%C7%C2%BD
  • HTTP响应格式:
HTTP/1.1 200 OK  HTTP协议版本 状态代码 对状态代码的描述
Server:Apache-Coyote/1.1 服务器类型
Content-Type:text/html  正文类型(MIME)
Accept:text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8
Accept-Encoding:    gzip, deflate
Accept-Language:zh-CN,zh;q=0.8,en-US;q=0.5,en;q=0.3  浏览器所用语言
Cache-Control:max-age=0
Connection:keep-alive
Host:127.0.0.1:8080
User-Agent:Mozilla/5.0 (Windows NT 10.0; WOW64; rv:47.0) Gecko/20100101 Firefox/47.0
 
<html>  响应正文
    <head>
    <title>Hello World</title>    
    </head>
    <body>
        <form name="loginForm" method="POST" action="Servlet/HelloServlet">
            <table>
                <tr>
                    <td><div align="right">UserName</div></td>
                    <td><input type="text" name="username"></td>
                </tr>
                <tr>
                    <td><div align="right">PassWord</div></td>
                    <td><input type="password" name="password"></td>
                </tr>
                <tr>
                    <td><input type="submit" name="submit" value="登陆"></td>
                    <td><input type="reset" name="reset" value="重置"></td>
                </tr>
            </table>
        </form>
    </body>
</html>

  

原文地址:https://www.cnblogs.com/MrSaver/p/5961920.html