将html数据发布到python模型,然后将结果返回给html

时间:2018-12-27 19:51:42

标签: javascript python jquery flask scikit-learn

我正在开发一个应用程序,其中聊天机器人会询问用户问题,获取答案,通过python sklearn模型运行其答案并输出结果。

我有一个html / javascript / jquery文件,其中的输入字段为id ='0',id ='1',...,id = '16'。我试图将这些值用作python sklearn模型的输入,并在不刷新页面的情况下返回结果。我进行了设置,因此当最后一个聊天机器人答案提交时,页面上的数据全部由答案ID来获取。我想将此数据作为模型的输入发布,并返回模型的结果,并让聊天机器人对此结果做出响应。

Python app.py:

app.route('/')
def index():
    return render_template('index.html')

app.route('/getdata', methods=['GET','POST']) 
def getdata(): 
    if request.method == 'POST': 
        print('getting data')
        return json['data']
    else: 
       return 'no data' 

JavaScript

    function endMessage() {
    var e0 = document.getElementById('1') 
    var e1 = document.getElementById('2')

    var data = [e0,e1] 
    $.ajax({ 
        type:"POST", 
        url:"/getdata", 
        data: JSON.stringify(data), 
        contentType: 'application/json;charset=UTF-8',
        success: function(response) { 
            console.log(response); 
        }
    }); 
}

提交最后一个问题时,将触发功能endMessage。这是我试图让ajax发出POST请求的地方。

首先,我无法获取要发布的数据。我的flask应用程序从不打印“获取数据”,因此ajax似乎从未发布过数据。其次,我很困惑如何将这些数据传递给我的python模型函数,然后将其发送回html文件。在我的JavaScript中,我应该将ajax用作“ GET”,并具有一个烧瓶函数,该函数将POSTS发送到模型结果的不同路径?

0 个答案:

没有答案