我试图运行一个简单的flask应用程序,但遇到TypeError

时间:2019-07-18 10:36:23

标签: python flask python-3.7.4

我正在尝试运行一个简单的flask应用程序,其中仅显示hello world,但是出现类型错误。在类型错误中有一个引用,该引用指定一个名为app.py的文件并在其中显示错误,但我无法弄清楚它们。我遇到错误的文件在flask文件夹中。请帮助我如何解决此问题。

我已经完成了运行这些代码的工作,由于命令提示符给了我localhost代码,但是当我尝试在浏览器上运行时,我遇到了类型错误。

set FLASK_ENV=development

set FLASK_APP=app.py

这是我的代码

from flask import Flask

app = Flask("__name__")

@app.route("/")

def index():

    print("Hello World")

当我在命令提示符下运行这三行内容

set FLASK_ENV=development

set FLASK_APP=app.py

flask run

**我收到了这个**

  • 正在投放Flask应用程序“ app.py”(延迟加载)
  • 环境:发展
  • 调试模式:开
  • 从统计信息重新启动
  • 调试器处于活动状态!
  • 调试器PIN:179-513-092
  • http://127.0.0.1:5000/上运行(按CTRL + C退出)

此后,当我在浏览器中使用代码时,浏览器将向我显示

Traceback (most recent call last):
  File "c:\users\muhammad umar\appdata\local\programs\python\python37-       32\lib\site-packages\flask\app.py", line 2463, in __call__
    return self.wsgi_app(environ, start_response)
  File "c:\users\muhammad umar\appdata\local\programs\python\python37-   32\lib\site-packages\flask\app.py", line 2449, in wsgi_app
    response = self.handle_exception(e)
  File "c:\users\muhammad umar\appdata\local\programs\python\python37-32\lib\site-packages\flask\app.py", line 1866, in handle_exception
    reraise(exc_type, exc_value, tb)
  File "c:\users\muhammad umar\appdata\local\programs\python\python37-32\lib\site-packages\flask\_compat.py", line 39, in reraise
    raise value
  File "c:\users\muhammad umar\appdata\local\programs\python\python37-32\lib\site-packages\flask\app.py", line 2446, in wsgi_app
    response = self.full_dispatch_request()
  File "c:\users\muhammad umar\appdata\local\programs\python\python37-32\lib\site-packages\flask\app.py", line 1952, in full_dispatch_request
    return self.finalize_request(rv)
  File "c:\users\muhammad umar\appdata\local\programs\python\python37-32\lib\site-packages\flask\app.py", line 1967, in finalize_request
    response = self.make_response(rv)
  File "c:\users\muhammad umar\appdata\local\programs\python\python37-32\lib\site-packages\flask\app.py", line 2097, in make_response
    "The view function did not return a valid response. The"
TypeError: The view function did not return a valid response. The function either returned None or ended without a return statement.

2 个答案:

答案 0 :(得分:1)

您不应该打印响应,需要返回它,以便Flask可以将其发送到浏览器:

from flask import Flask

app = Flask("__name__")

@app.route("/")
def index():
    return "Hello World"

这并不是说您不能打印,可以(它显示在控制台中),但是请记住在您的路线中返回响应。

答案 1 :(得分:0)

您不需要“打印”输出,而需要“返回”。因此更改后的代码将是:

from flask import Flask

app = Flask("__name__")

@app.route("/")

def index():

    return "Hello World"