Flask:View函数没有返回js文件的响应

时间:2013-02-25 13:49:03

标签: python flask

我用python-flask构建一个网站。在一个页面我加载了一个javascript文件。这是我的文件结构:

/python
   /static
     /plugins
     /themes
       /default
          /js
            /my-js.js
   /templates
     /my-file.html
   /venv
   app.py

我已将my-js.js包含在my-file.html中。

在此js之前,还有其他脚本成功加载页面(与my-js.js在同一个目录中)。

当我使用网址/static/themes/default/js/my-js.js来调用我的文件时 它用追溯来说ValueError: View function did not return a response

Traceback (most recent call last):
  File "/Users/ozcan/Library/Python/2.7/lib/python/site-packages/flask/app.py", line 1701, in __call__
    return self.wsgi_app(environ, start_response)
  File "/Users/ozcan/Library/Python/2.7/lib/python/site-packages/flask/app.py", line 1689, in wsgi_app
    response = self.make_response(self.handle_exception(e))
  File "/Users/ozcan/Library/Python/2.7/lib/python/site-packages/flask/app.py", line 1687, in wsgi_app
    response = self.full_dispatch_request()
  File "/Users/ozcan/Library/Python/2.7/lib/python/site-packages/flask/app.py", line 1361, in full_dispatch_request
    response = self.make_response(rv)
  File "/Users/ozcan/Library/Python/2.7/lib/python/site-packages/flask/app.py", line 1439, in make_response
    raise ValueError('View function did not return a response')
ValueError: View function did not return a response

为什么会发生这种情况?我没有写过静态文件的路由,例如这些js.How是否正在加载其他js文件而这个不是?

1 个答案:

答案 0 :(得分:1)

我能想到的一些事情。首先,看起来你正试图将绝对路径传递给my-js.js,当你真的想要一个相对路径时,试试URL“static / themes / default / js / my-js.js”(没有领先斜线),看看是否有帮助。

另外,如果没有看到你的python或Javascript,很难确认这一点,但你是否在你的响应对象中设置了适当的mimetype(它应该是application / javascript)?