首页 > 解决方案 > 如何使用 AJAX 请求将数据从 Javascript 发送到 Python Flask 应用程序?

问题描述

我想从 Javascript 中的 localStorage 向我的 Flask 应用程序发送一个变量。

if(localStorage.getItem("current_channel")) {
    alert("in")
    const request = new XMLHttpRequest();
    let channel = localStorage.getItem("current_channel")

    request.open("POST", "/current")
    request.send(channel)
}

我知道我打算发送一个 AJAX 请求,并尝试在我的 Javascript 代码中这样做,但不确定我在我的 Python 代码中要做什么。

里面的变量localStorage.getItem("current_channel")是由这部分javascript代码声明的。

document.querySelector(".channel-link").addEventListener("click", () => {
    channel=document.querySelector(".channel-link").innerHTML
    alert("You have joined:" + channel)
    localStorage.setItem("current_channel", channel)
});

我曾尝试使用request.get_json()来访问该变量,但这不起作用,因为我得到了current_channel错误NoneType。我也尝试过使用request.form.get来访问发送的变量,但是

@app.route("/current", methods=["POST"])
def current():
    current_channel = request.get_json()
    return redirect("/channels" + current_channel)

标签: javascriptpythonajaxflask

解决方案


推荐阅读