web开发的本质
Posted _小溢
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了web开发的本质相关的知识,希望对你有一定的参考价值。
1.浏览器上输入一个网址回车后都发生了什么?
(1)浏览器相当于一个客户端,将域名翻译成ip,浏览器给服务端发送一个消息。
(2)服务端拿到消息
(3)服务端返回消息
(4)浏览器展示页面
2.客户端和服务端的消息格式是约定好的
浏览器这个客户端和我们写的server想要实现通信,同样的需要走一个协议,这个规约就是HTTP协议
3.HTTP
浏览器和服务器之间约定好的消息格式通信协议
4.web本质示例
(1)手写的server端
# web本质 示例 import socket sk = socket.socket() sk.bind((\'127.0.0.1\', 8000)) sk.listen(5) while 1: conn, addr = sk.accept() conn.recv(1024) conn.send(b\'HTTP/1.1 200 OK\\r\\n\\r\\n\') # 按照http协议的格式发送消息 # conn.send(b\'hello world!\') # 发送到浏览器客户端的内容 # conn.send(b\'<h1>hello world!</h1>\') # 发送到浏览器客户端的内容 #conn.send(b\'HTTP/1.1 200 OK\\r\\n\\r\\nhello world!\') # 按照http协议的格式发送消息 # 从文件读取 with open(\'data.html\', \'rb\') as f: msg = f.read() conn.send(msg) # 发送到浏览器客户端的内容 conn.close()
(2)data.html内容为
<h1>hello world!</h1>
(3)可以用浏览器访问服务端的ip地址,服务端按照http通信的规则返回一个html给浏览器,浏览器就展示出来了这个html的内容
(4)同时,我们写好一个html后,也可以直接用浏览器打开。
5.web本质
服务端
客户端浏览器
HTML文件
Django这种web框架,就是怎么去返回不同的html
以上是关于web开发的本质的主要内容,如果未能解决你的问题,请参考以下文章