阅读 663

浅谈前端 | 前端简介

这是我参与更文挑战的第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()
    
![wallhaven-0p8q6j_1920x1080.png](https://p3-juejin.byteimg.com/tos-cn-i-k3u1fbpfcp/84c788ebffa14d90a5cb20ecc08c2713~tplv-k3u1fbpfcp-watermark.image)
 # 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协议,这里只是让大家有一个印象。

结语

文章首发于微信公众号程序媛小庄,同步于掘金知乎

码字不易,转载请说明出处,走过路过的小伙伴们伸出可爱的小指头点个赞再走吧(╹▽╹)

wallhaven-0p8q6j_1920x1080.png

文章分类
前端
文章标签