什么是web框架和http协议

Posted clyde_S

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了什么是web框架和http协议相关的知识,希望对你有一定的参考价值。

Django是一个web框架

web框架的本质:就是一个socket服务端

bs架构本质上就是cs架构(cs架构就是client和server):bs架构就是browser和server,本质上browser可以看做是client客户端

 

http协议详解:bs架构之间的数据传输协议

http请求协议

‘‘‘这个是http请求首行,GET就是请求的方法,浏览器里请求地址就是发送一个GET请求,所以请求首行看到的第一个就是请求方法,然后以空格隔开,第二个就是请求的地址,然后空格后的是请求协议‘‘‘

GET /index HTTP/1.1    

‘‘‘这个是请求头,就是一堆key:value的东西‘‘‘

Host: 127.0.0.1:8080    

Connection: keep-alive

Cache-Control: max-age=0

Upgrade-Insecure-Requests: 1

User-Agent: Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (Khtml, like Gecko) Chrome/70.0.3538.67 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    

‘‘‘ 的后面就是请求体,可以带数据的‘‘‘

‘‘‘请求体‘‘‘

客户点向服务器发送数据,放这里

 

http协议实例

import socket

socket = socket.socket()

socket.bind((‘127.0.0.1‘,8080))

socket.listen(5)

while True:
conn,addr = socket.accept()
data = conn.recv(1024)
print(data)

# # HTTP协议返回的格式
# conn.send(b‘HTTP/1.1 200 ok hello web‘)

# # HTT返回的内容也可以写css样式
# conn.send(b‘HTTP/1.1 200 ok <h1>hello web</h1>‘)

# HTTP返回图片
conn.send(b‘HTTP/1.1 200 ok <h1>hello web</h1><img src="http://b.hiphotos.baidu.com/image/pic/item/11385343fbf2b2114a65cd70c48065380cd78e41.jpg"></img>‘)


break

 

 

静态网站和动态网站区别

静态网站:网站的数据是不变的,所有页面的内容都不会改变

动态网站:每次请求的数据都是不同的

 

动态网站实例:

 

以上是关于什么是web框架和http协议的主要内容,如果未能解决你的问题,请参考以下文章

61web框架

web框架

如何搭建一个简易的Web框架

python面试题四:Python web框架

复习回顾--Django

web框架,HTTP协议,django初始安装