【发布时间】:2013-11-03 05:47:04
【问题描述】:
我正在编写一个非常简单的烧瓶应用程序(一个 URL 缩短器),它应该能够将某些请求重定向到其他任意域。但是,我遇到了重定向问题。例如,这个精简版不起作用:
from app import app, db
from flask import abort, redirect
@app.route('/')
def index():
return "Hello, world"
@app.route('/favicon.ico')
def favicon():
abort(404)
@app.route('/<slug>')
def redirect(slug):
return redirect('http://google.com/')
也许天真地,我希望这会重定向到 google.com,但重定向似乎被 Flask “捕获”,它尝试通过重定向处理程序(例如 redirect(slug="http://google.com/"))将重定向的 URL 路由回,直到它通过递归和错误耗尽所有堆栈空间。我似乎无法弄清楚为什么会发生这种情况,或者如何解决它,但我真的很感激一个指向正确方向的指针。
【问题讨论】: