这是我参与更文挑战的第26天,活动详情查看: 更文挑战
微信公众号搜索【程序媛小庄】,领取全套python全栈教程,还有小庄整理的不断更新的电子书、面试资料等你来拿哦~
前言
前面的文章我们介绍了MySQL和python基础,可是就靠这俩兄弟感觉好像做不出来网页的感觉…如果想要把数据展示出来就需要前端了,前端就是用来和用户直接交互的,而python属于后端语言,将数据整理好了给前端展示,为了能够将数据展示出来,我们就来一起简单的看一下前端的知识吧,由于本人不是专业前端,所以在介绍前端内容时只介绍基础部分,能够让大家搭建简单的页面就OK了。
简单学习前端的路线
基础部分
HTML:网页的骨架,没有任何样式
CSS:给骨架添加各种各样的样式,使页面变的好看、
JS:网页的动态效果
框架部分
bootstrap jQuery:提前封装好的功能,只需要按照固定的语法调用即可
回顾-浏览器窗口输入网址回车后发生的事情
软件架构分为C/S架构和B/S架构两种,而浏览器是一种特殊的客户端,可以充当很多服务端的客户端,在浏览器的地址栏内输入网址,简单来讲是发生了四件事:
- 浏览器向服务端发送请求
- 服务端接收请求
- 服务端返回响应内容
- 浏览器接收响应,并将响应内容按照一定规则渲染在页面上
python模拟上网过程
浏览网页时,客户端是浏览器,而浏览器可以充当很多服务端的客户端,浏览器能够和不同服务端进行数据交互的原因有以下两方面:
第一,浏览器能够自动识别不同服务端做不同的处理;
第二,有一个统一的标准,能够使服务端和客户端之间做正常的数据交互,这个标准就是HTTP协议。
因此我们可以自己写一个符合HTTP协议的服务端,客户端就是浏览器,运行server.py
文件之后,在浏览器中输入127.0.0.1:8080
即可访问,代码如下:
# server.py
import socket
server = socket.socket()
server.bind(('127.0.0.1', 8080))
server.listen(5)
while True:
conn,addr = server.accept()
data = conn.recv(1024)
print(data)
# 构造出符合HTTP协议格式的数据
conn.send(b'HTTP/1.1 200 OK\r\n\r\n')
with open('a.txt','rb') as f:
conn.send(f.read())
conn.send(b'hello')
conn.close()

# a.txt
<h1>hello</h1>
<a href="https://www.cnblogs.com/Kathrine/">my blog</a>
复制代码
HTTP协议简介
HTTP协议是应用层的一种协议,全称为**超文本传输协议(也叫超文本转移协议),用来规定服务端和浏览器之间交互数据的格式。**如果是BS软件,就必须准许HTTP协议,否则只能是自己写客户端的app。
HTTP协议有以下几个特性:
第一,基于请求响应;
第二,是应用层的协议;
第三,无状态,不保存用户的信息,比如说你登录你的淘宝,浏览器无法记住你的登录状态,这样你就无法愉快的剁手了…当然为了解决这一问题,出现了cookie,session,token等技术,后面我会介绍。
第四,无链接或短链接,请求访问一次就响应一次,之后服务端和客户端就没有任何联系了。
HTTP协议的知识非常重要,后续会在文章中详细介绍HTTP协议,这里只是让大家有一个印象。
结语
码字不易,转载请说明出处,走过路过的小伙伴们伸出可爱的小指头点个赞再走吧(╹▽╹)