0

python-flask を使用して Web サイトを構築します。ページに JavaScript ファイルをロードしました。ファイル構造は次のとおりです。

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

my-file.html に my-js.js を含めました。

この js の前に、他のスクリプトがページ (my-js.js と同じディレクトリにある) を正常にロードすることもあります。

URL/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 などの静的ファイルのルートを書きませんでした。他の js ファイルがロードされているのに、これはロードされていないのはなぜですか?

4

1 に答える 1

1

思いつくことをいくつか。最初に、my-js.js に絶対パスを渡そうとしているように見えますが、本当に相対パスが必要な場合は、"static/themes/default/js/my-js.js" という URL を試してください (先行なし)スラッシュ)、それが役立つかどうかを確認してください。

また、Python や Javascript が表示されていないため、これを確認するのは困難ですが、応答オブジェクトに適切な MIME タイプを設定していますか (application/javascript である必要があります)。

于 2013-02-25T14:27:47.323 に答える