首页 > 解决方案 > 使用 fetch 将数据传递给带有 ajax 的 Flask 服务器导致错误的请求错误

问题描述

这个程序是关于一个文本摘要器。输入来自文本区域,然后传递给 Flask 服务器。我使用 ajax fetch 发布数据,但代码显示错误请求错误。如何解决错误?

这是 JavaScript 部分。

<body>
    <form method="post">
    <textarea rows="10" cols="60" id="input" type="text"> </textarea>
    <input id="btn-i" type="button" value="Convert" onclick="sendThis()">
    <textarea rows="10" cols="60" id="btn-o" type="text"></textarea>
    </form>


    <script>

    function sendThis() {
        var input = document.getElementById("input").value;

        var  uurl = 'http://127.0.0.1:5000/'
        fetch(uurl, {
            method: 'POST',
            body: input

            }).then(function (result) {
                console.log(result); 
                console.log(JSON.stringify(result));
                var res = JSON.stringify(result);
                printOutput(res);
            }).catch (function (error) {
                console.log('Error: ', error);
            })
    }

    function printOutput(res) {
        var x = document.getElementById('btn-o');
        x.value = res;
    }

而这部分就是 Flask 服务器。我需要在同一页面上显示输出..

from flask import Flask,render_template,request

from flask import jsonify
from commons import open_files

app = Flask(__name__)

@app.route('/',methods=['GET','POST'])
def hello_world():
   if request.method=='GET':
       return render_template('check.html')

   if request.method=='POST':
       text=request.form['input']
       print(text)
       return jsonify(open_files(text))



if __name__=='__main__':
    app.run(debug=True)

标签: javascriptajaxflask

解决方案


推荐阅读