gpt4 book ai didi

javascript - 在 Python Flask 中传递 Javascript 数组

转载 作者:行者123 更新时间:2023-12-03 00:34:59 25 4
gpt4 key购买 nike

我正在使用python Flask进行开发和应用,我想将Javascript函数的返回值(一个数组)发送到python函数。下面给出的是代码。

Javascript

<script>
function getVals(){
a = [ab, cd];
return a;
}
</script>

HTML

<a href="/end_stu_live_session">End This</a>

Python

@app.route('/end_stu_live_session')
def end_stu_live_session():
return render_template('stu_dashboard.html')

我希望将 Javascript 函数 getVals() 中的数组传递给 python 函数 end_stu_live_session。非常感谢任何帮助。谢谢。

最佳答案

  • 您可以通过 Ajax 将 Javascript 函数的返回值(数组)以 JSON 形式发送到 Python 方法。
  • 从 AJAX 发送 contentType: 'application/json' 并在 Flask 中以 request.json 形式接收数据。

app.py:

from flask import Flask, render_template, request, jsonify

app = Flask(__name__)

@app.route('/end_stu_live_session',methods=["GET", "POST"])
def end_stu_live_session():
if request.method == 'POST':
data = request.json
return jsonify(data)
return render_template("home.html")

app.run(debug=True)

home.html:

<html>
<head>
<title>Flask Ajax</title>
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
</head>
<body>
<div id="data"></div>
<button id="demo_btn">Dummy button</button>
<script>
function getVals(){
a = ["ab", "cd"];
return a;
}
$(document).ready(function () {
$("#demo_btn").on("click", function() {
var js_data = JSON.stringify(getVals());
$.ajax({
url: '/end_stu_live_session',
type : 'post',
contentType: 'application/json',
dataType : 'json',
data : js_data
}).done(function(result) {
console.log(result);
$("#data").html(result);
}).fail(function(jqXHR, textStatus, errorThrown) {
console.log("fail: ",textStatus, errorThrown);
});
});
});
</script>
</body>
</html>

输出:

flask ajax request

关于javascript - 在 Python Flask 中传递 Javascript 数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53694709/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com