鉴于网上大部分是post请求的文章,本文提供get和post请求的参考
目录
一、flask与ajax的get请求的交互
二、flask与ajax的post请求的交互
参考:https://blog.csdn/kikaylee/article/details/54885250
一、flask与ajax的get请求的交互
前端(index.html)
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>index</title>
</head>
<body>
<button onclick="getTest()">点击响应ajax中get请求</button>
</body>
<!-- js部分 -->
<!-- 引入jquery -->
<script src="https://cdn.staticfile/jquery/1.10.2/jquery.min.js"></script>
<script>
function getTest(){
$.ajax({
type: 'GET',
url: '/testGet',
dataType: 'json',
data: {'name':'get'},
success: function(res){
console.log(res)
},
error: function(){
consle.log('error')
}
})
}
</script>
<!-- /js部分 -->
</html>
后端(routes.py)
# 一个简单的flask脚本,参照一个最小的应用
from flask import Flask,render_template,request,jsonify
app = Flask(__name__)
# 路由
@app.route('/')
def index():
return render_template('index.html')
#处理ajax中get请求
@app.route('/testGet',methods=['GET'])
def testGet():
data = request.args.get('name')
print(data)
return jsonify({'status':True})
if __name__ == '__main__':
app.run()
二、flask与ajax的post请求的交互
前端(html)
<html>
<head></head>
<body>
<form class="formXXX1" method="post">
<br class="formXXX2" />
<div class="form-group">
<label for="
telephone14">手机号: <input class="form1" type="iphone" id="a" name="a" maxlength="11" placeholder="请输入11位合法手机号" /> </label>
</div>
<div class="example-box">
<label> 环境:</label>
<label class="radio"> <input type="radio" id="b" name="b" value="0" checked="" /><span>b1</span> </label>
<label class="radio"> <input type="radio" id="b" name="b" value="1" /><span>b2</span> </label>
</div>
<br />
<div class="form-group">
<button class="btn btn-primary" type="button" id="notify">提交</button>
</div>
</form>
</body>
</html>
JS
//路径根据实际路径填写
<script type="text/javascript" src="static/js/jquery.min.js"></script>
<script type = "text/javascript" >
$('#notify').on('click',
function() {
//取变量
var b= $("input[name='b']:checked").val(); //单选框取值
var a= $('#a').val();
var data = {
data: JSON.stringify({
'a': a,
'b': b
}),
}
//小于11位提示
if (a.length != 11) {
alert('手机号小于11位,请重新输入');
return;
}
//ajax 提交数据
$.ajax({
type: "POST",
dataType: "json",
url: "/aaa",//后端请求
data: data,
success: function(result) {
console.log(result)
},
error: function (result) {
console.log(result)
}
})
})
</script>
后端flask
@app.route('/aaa',methods=['POST'])
def aaa():
data = json.loads(request.form.get('data'))
a= data['a']
b= data['b']
print (a,b)
# msg = bbb(a, b)#调用 bbb方法拿返回值
msg =a,b
return jsonify(msg)
更多推荐
flask与ajax交互
发布评论