WEB开发技术-基础篇

WEB开发技术

生活中的WEB

现在已经进入移动互联时代,生活中越来越依赖手机、互联网等等,你访问的网站,使用的APP等,WEB技术都占有重要地位。现在就从你点击一个网页链接或者发起一次接口请求说起。

假如你访问的是:www.baidu.com。这显然是一个域名,如果要和百度服务器通信需要使用TCP/IP协议中的IP地址,它可以指向唯一的主机,客户机会想DNS服务器发起请求,完成域名到IP的过程。

得到IP地址后,浏览器会和服务器建立TCP连接(这就涉及到很多底层网络访问,比如子网映射、路由转发、三次握手等等),传输HTTP协议,如果没有指定端口,HTTP协议默认为80端口,随后浏览器发出www.baidu.com的网页资源请求:


GET / http/1.1

Accept:text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,*/*;q=0.8

Accept-Encoding:gzip, deflate, sdch, br

Accept-Language:zh-CN,zh;q=0.8

Cache-Control:max-age=0

Connection:keep-alive

Cookie:__cfduid=d26af6........

Host:www.baidu.com

Upgrade-Insecure-Requests:1

User-Agent:Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/55.0.2883.87 Safari/537.36

服务器接收到获取请求,然后处理并返回一个响应。可能是一个WEB服务器或者负载均衡在监听端口,或者是web服务器软件(像IIS和阿帕奇)接收到HTTP请求,然后确定执行什么请求处理来处理它。请求处理就是一个能够读懂请求并且能生成HTML来进行响应的程序(像ASP.NET,PHP,RUBY…)。中间可能会涉及数据库操作、逻辑处理等等。返回的响应如下:


HTTP/1.1 200 OK

BDPAGETYPE:2

BDQID:0xa64f2b530005bcc0

BDUSERID:802425255

Cache-Control:private

Connection:keep-alive

Content-Encoding:gzip

Content-Type:text/html;charset=utf-8

Date:Thu, 11 May 2017 12:33:16 GMT

Expires:Thu, 11 May 2017 12:33:16 GMT

Server:bfe/1.0.8.18

Set-Cookie:BDSVRTM=162; path=/

Set-Cookie:H_PS_PSSID=1434_21088_18560_17001_21931_22919_20929; path=/; domain=.baidu.com

Set-Cookie:__bsi=13914547124298889310_00_0_I_R_166_0303_C02F_N_I_I_0; expires=Thu, 11-May-17 

你可能感兴趣的:(java-web,web开发,前端,web底层)