使用AJAX发布时未找到Python Flask路由
我正在尝试路由我的烧瓶路由,并查看烧瓶的正确返回(返回在我下面的代码中指示)。当我将我的页面指向使用AJAX发布时未找到Python Flask路由,python,ajax,flask,Python,Ajax,Flask,我正在尝试路由我的烧瓶路由,并查看烧瓶的正确返回(返回在我下面的代码中指示)。当我将我的页面指向mypage.com/时,我确实看到了输出,但当我希望看到“hello world”时,它似乎正在返回控制台中的xxamp apache索引页面 以下是我的目录列表: /localhost /my_dir /js /templates app.py 下面是我对/的AJAX调用: js: 这是我的烧瓶: app.py: from flask im
mypage.com/
时,我确实看到了输出,但当我希望看到“hello world”时,它似乎正在返回控制台中的xxamp apache索引页面
以下是我的目录列表:
/localhost
/my_dir
/js
/templates
app.py
下面是我对/
的AJAX调用:
js:
这是我的烧瓶:
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?尝试使用可接受的方法添加POST
@app.route('/index', methods=['GET', 'POST'])
def index():
return render_template('index.html')
你在app.py中调用app.run()了吗?运行Flask应用程序,比如:app.Run(host='0.0.0',debug=True,threaded=True,port=)@RogerHuang是的,对不起,我的代码中确实有这个。我刚刚更新了代码。使用$curl localhost:查看您的flask应用程序是否收到http请求,控制台中应该有一些有用的日志。@RogerHuang噢,在运行ajax请求之前,我必须手动运行flask吗?是的。您必须在本地运行服务器(以后可能会部署到其他地方)。使用诸如:$python app.py之类的命令,您应该能够看到:*正在运行以获取更多信息:
@app.route('/index')
和docurl-X POSThttp://127.0.0.15000/index -d'test'
我必须使用405方法不允许响应po?$curl-X POST-d'test'?127.0.0.1:5000
:)它似乎在工作curl-X GEThttp://127.0.0.1:5000/index -d'test'
但我的AJAX调用似乎没有触及该端口。这是在一个Web服务器上运行的。我需要一些特殊的配置来进行AJAX调用,以使调用成为端口5000吗?我不这么认为。尝试添加变量user/而不是/only。在Ajax调用“/myuser”时使用GET和concat命令访问您的用户
@app.route('/index', methods=['GET', 'POST'])
def index():
return render_template('index.html')