2016-04-14 7 views
0

編集]を実行しているとき:トレースバックはシンプルなフラスコアプリケーションに

https://github.com/pallets/werkzeug/issues/798

:この質問は明らかにここで答え

Quickstart Flask application failing for some reason

と同様に、ここで(閉じた状態と明らかに固定)GitHubの問題を持っています残念ながら、Werkzeug 0.12-dev(GitHubの最新コード)でさえ、私はまだこの問題を経験しています。

私は、Windows上でPython 3.4を使って簡単なFlaskアプリケーションを開発し始めました。文字通り、現在のところfileserve.pyの唯一の内容です。

import os.path 

from flask import abort, Flask 


base_directory = os.path.abspath(os.path.dirname(__file__)) 
app = Flask(__name__) 
app.config.from_pyfile(os.path.join(base_directory, 'fileserve.cfg')) 


@app.route('/') 
def index(): 
    abort(403) 


if __name__ == '__main__': 
    app.run(debug=True) 

私はアプリケーションを実行しようとすると、私は以下のトレースバックを得る:

Traceback (most recent call last): 
    File "fileserve.py", line 22, in <module> 
    app.run(debug=True) 
    File "C:\Users\jscholes\dev\fileserve\env\lib\site-packages\flask\app.py", line 772, in run 
    run_simple(host, port, self, **options) 
    File "C:\Users\jscholes\dev\fileserve\env\lib\site-packages\werkzeug\serving.py", line 633, in run_simple 
    application = DebuggedApplication(application, use_evalex) 
    File "C:\Users\jscholes\dev\fileserve\env\lib\site-packages\werkzeug\debug\__init__.py", line 249, in __init__ 
    if self.pin is None: 
    File "C:\Users\jscholes\dev\fileserve\env\lib\site-packages\werkzeug\debug\__init__.py", line 259, in _get_pin 
    self._pin, self._pin_cookie = get_pin_and_cookie_name(self.app) 
    File "C:\Users\jscholes\dev\fileserve\env\lib\site-packages\werkzeug\debug\__init__.py", line 169, in get_pin_and_cookie_name 
    h.update('cookiesalt') 
TypeError: Unicode-objects must be encoded before hashing 

このエラーがさえ、単純な "Hello World" のアプリで発生します。

from flask import Flask 
app = Flask(__name__) 
@app.route('/') 
def index(): 
    return 'Hello world' 
app.run(debug=True) 

は、フラスコのサポートですPython 3のためにあまりよくない?このための回避策はありますか?デバッグモードのオプションなしで作業することは大きな見通しではありません。

+0

を設定ファイルの内容は何ですか?私はそれをテストしたい – sebenalern

+0

dupに関するコメントから引用する: "このバグは確認されており、Werkzeug 0.11.1で修正する必要があります。" –

+0

ありがとうございますが、私はGitHub(0.12-dev)の最新の開発コードを持っています。 –

答えて

0

あなたのwerkzeugインストールをアップグレードしてください。私werkzeug.__version__ == 0.11.7で、インストールに

、ライン169は、読み取ります

h.update(b'cookiesalt') 
+0

私はGitHub(0.12-dev)の最新コードを持っています。 –