使用AJAX进行POST

时间:2018-07-03 02:56:33

标签: python ajax flask

我正在尝试路线我的Flask路线,并查看Flask的正确返回(下面的代码中指示的返回)。当我将页面定向到mypage.com/时,我确实看到了输出,但是当我希望看到“ hello world”时,它似乎正在控制台中返回xxamp apache索引页面。

这是我的目录清单:

/localhost
    /my_dir
        /js
        /templates
        app.py

这是我对/的AJAX呼叫:

js:

$(function(){
$('button').click(function(){
    var user = "user";
    $.ajax({
        url: '/',
        data: user,
        type: 'POST',
        success: function(response){
            console.log(response);
        },
        error: function(error){
            console.log(error);
        }
    });
});
});

这是我的烧瓶:

app.py:

from flask import Flask, request, send_file, render_template, json
from ftplib import FTP                                                                      

app = Flask(__name__)

@app.route('/')
def hello_world():
return 'hello world!'

if __name__ == "__main__":
app.run()

这里似乎断开了连接。我相信我的Apache在80上运行,而Flask在5000上监听。所以我的javascript AJAX调用实际上是在对端口80而不是5000进行调用,因此,为什么我认为我看到的回报不同于预期。我必须在AJAX调用中指定端口,还是应该让flask在端口80上监听?

1 个答案:

答案 0 :(得分:1)

尝试使用可接受的方法添加POST

@app.route('/index', methods=['GET', 'POST'])
def index():
    return render_template('index.html')