Flask建站笔记-前后台交互传参

前后台交互,传参是必不可少的,来说一说Falsk中常用的传参方式。


在JS中使用POST ajax传参

在js中将参数封装成json字符串,使用POST方法访问路由函数。获取参数并处理

var data = {
    a: a,
    b: b
}
$.ajax({
    type: "POST",
    url: "/blog/blog",
    data: JSON.stringify(data),
    contentType: 'application/json; charset=UTF-8', //发送json数据
    datatype: 'json',  //希望服务器返回json数据
    success: function (data) {},
    error: function () {}
});

后台接受参数

from flask import request
import json

blog.route("/blog", methods=["POST"])
def blog():
    data = request.data
    json_data = json.loads(data.decode("utf-8"))

    a = json_data.get("a", None)
    b = json_data.get("b", None)

在JS中使用GET url传参

在js中直接使用window.location.replace()方法跳转,并将参数写入url传到后台的方法

window.location.replace("/blog/blog/" + 1)

路由函数

blog.route("/blog/", methods=["GET"])
def blog(id):
    print(id)

在HTML中使用jinjia2语法 url传参

在html中使用jinjia2语法 url_for 跳转,使用url传参

<a href="{{ url_for('blogmain.index', id=1) }}">博客a>

路由函数

blog.route("/blog/", methods=["GET"])
def blog(id):
    print(id)

你可能感兴趣的:(python)