如何使用flask从javascript获取变量

如何使用flask从javascript获取变量,javascript,python,flask,Javascript,Python,Flask,所以我已经按照flask的建议在适当的文件夹中设置了app.py、index.js、index.html。Index.html呈现为app.py运行时,Index.html运行Index.js,从用户获取输入数据。我正在尝试发送这个输入并将其发送到python,在那里我可以调用API、获取数据并使用它,但是我想不出一种方法来实现这一点 我的app.py: import os from flask import Flask, render_template, jsonify, request, r

所以我已经按照flask的建议在适当的文件夹中设置了app.py、index.js、index.html。Index.html呈现为app.py运行时,Index.html运行Index.js,从用户获取输入数据。我正在尝试发送这个输入并将其发送到python,在那里我可以调用API、获取数据并使用它,但是我想不出一种方法来实现这一点

我的app.py:

import os
from flask import Flask, render_template, jsonify, request, redirect
app = Flask(__name__)

# This will run upon entrance
@app.route("/")
def home():
    return render_template("index.html")

@app.route("/stock_data")
def get_stock_data():
    # called from index.js Plot function

if __name__ == "__main__":
    app.run()
下面是我的javascript代码:

console.log("everythin works fine.")
d3.select("#stocklabelsubmit").on("click", submitted)

function submitted(){
    d3.event.preventDefault();

    // grab label inputted.
    var inputted_label = d3.select("#stockInput").node().value;

    d3.select("#stockInput").node().value = "";

    Plot(inputted_label);
};


function Plot(input){
    var url = "full url"
    // when this function is called call /stock_data function!!
    // data is what is returned from python
    d3.json(url).then(function(data){

    })
}
一切正常,当我在提交的函数结束时输入控制台日志_标签时,一切正常。现在我想将输入的_标签变量发送到/stock_数据。提前谢谢

var url = "/stock_data"
这需要是一个有效的URL,而不仅仅是到Flask端点的路径。这意味着它必须以“http://”或“https://”开头,并包含一个域。出于开发目的,
”http://localhost/stock_data“
将起作用。如果您将其部署到服务器,则需要创建一个配置文件,以便根据您运行的环境配置主机名


这需要是一个有效的URL,而不仅仅是到Flask端点的路径。这意味着它必须以“http://”或“https://”开头,并包含一个域。出于开发目的,
”http://localhost/stock_data“
将起作用。如果您将其部署到服务器,则需要创建一个配置文件,以便根据您运行的环境配置主机名。

var url
需要是完整有效的url,而不仅仅是到flask端点的路径。好的,如果我在app.py中设置了完整的url如何使用输入?
var-url
需要是一个完整有效的url,而不仅仅是到flask端点的路径。好的,如果我在app.py中设置了完整的url如何使用输入?为什么要在为此构建
“{{url\u for(some\u endpoint)}”时创建一个配置文件?@roganjosh这取决于JavaScript文件的服务方式。如果它是从Flask提供的,那么当然。通过讨论聊天,因为我认为我遗漏了一些东西。如何在python中使用输入?只需调用“输入”?@makewhite您在web应用程序中不使用
input()
。为什么要在
“{{url\u for(some\u endpoint)}}”
为此构建时创建配置文件?@roganjosh这取决于JavaScript文件的服务方式。如果它是从Flask提供的,那么当然。通过讨论聊天,因为我认为我遗漏了一些东西。如何在python中使用输入?只要调用“输入”?@makewhite您就不会在web应用程序中使用
input()