文章目录
一.前后端分离
1.表征性状态转移
含义
其是一种软件架构风格、设计风格、而不是标准,只是提供了一组设计原则和约束条件。它主要用户客户端和服务器交互类的软件。
基于这个风格设计的软件可以更简洁,更有层次,更易于实现缓存机制等。
REST全称是Representational State Transfer,表征性状态转移。
表现形式
定义一个视图函数
127.0.0.1:5000/user/add/
127.0.0.1:5000/user/delete/
127.0.0.1:5000/user/update/
127.0.0.1:5000/user/find/
以上的路径可以直接观察到该路径是做什么的
把这些能看懂的东西叫做表征性 :add delete update find
需求:增删改查都是执行一个路径,例如:127.0.0.1:5000/user/
解决方案:根据请求方式不同,执行不同的业务逻辑
请求方式:get、post、put、delete
(get:查询 post:添加 put:修改 patch:修改 delete:删除)
@blue.route('/user/')
def user():
if request.method == 'get':
elif request.method == 'post'
elif request.method == 'put'
elif request.method == 'delete'
以上就是表征性状态转移。
2.Json
如果前后端分离了,那么页面中使用json来接收数据。
json是什么?
json是一种轻量级的数据交换标准
轻量级:同等数据量大小的情况下, json存储的内存更小,解析的速度更快
数据交换标准:不同语言的类型进行准换
3.前后端分离-源码结构
前后端分离的源码,进行增删改查。
如果判断请求方式,那么请求的方式的名字,必须要大写。
@blue.route('/user/',methods=['GET','POST','PUT','PATCH','DELETE'])
def user():
if request.method == 'GET':
return 'get'
elif request.method == 'POST':
return 'post'
elif request.method == 'DELETE':
return 'delete'
elif request.method == 'PATCH':
return 'update'
elif request.method == 'PUT':
return 'put'
4.前后端分离-添加
使用前后端分离的模式来实现数据的添加。
需注意:1.前后端分离的页面都是在static中的,所以在static中创建html文件夹,并在其中创建useradd.html文件。
<head>
<meta charset="UTF-8">
<title>Title</title>
<script type="text/javascript" src="/static/js/jquery.js"></script>
<script type="text/javascript">
$(function(){
$('button').click(function(){
var name = $('#name').val();
var age = $('#age').val();
$.post(
'/user/',
{
'name':name,'age':age},
function(data){
console.log(data);
}
)
})
})
</script>
</head>
<body>
name:<input type="text" id="name"><br>
age:<input type="text" id="age"><br>
<button>添加</button>
</body>
在前后端分离的页面中向后端发送请求的方法都有哪些种?
$.getJSON
发送请求到响应都需要什么东西?
url /user/
data 参数
function
$.get
$.post
$.ajax
2.static下面的页面是可以直接访问的,访问页面 http://xxx.xxx.xxx.xxx:5000/static/html/useradd.html
在视图函数中:
@blue.route('/user/',methods=['GET','POST','PUT','PATCH','DELETE'])
def user():
if request.method == 'GET':
return 'get'
elif request.method == 'POST':
# 使用前后端分离的模式 来实现数据的添加
# 在flask中接收get请求方式的方法是 request.args.get
# 接收post请求方式的方法是 request.form.get
# 接口文档
# url: 127.0.0.1:5000/user/
# data: name age
<