2015-11-09 2 views
3

Я создал свежую среду virtualenv для приложения Flask под названием flask-test, чтобы я мог провести некоторое тестирование. Представьте мое удивление, когда, запустив приложение QuickStart, я получаю следующее сообщение об ошибке:Приложение Quickstart Flask по какой-то причине

Honorss-MacBook-Air-2:Desktop Honors$ cd flask-testing 
Honorss-MacBook-Air-2:flask-testing Honors$ source bin/activate 
(flask-testing)Honorss-MacBook-Air-2:flask-testing Honors$ python app.py 
* Restarting with stat 
* Debugger is active! 
Traceback (most recent call last): 
File "app.py", line 10, in <module> 
app.run() 
File "/Users/Honors/Desktop/flask-testing/lib/python3.5/site-packages/flask/app.py", line 772, in run 
run_simple(host, port, self, **options) 
File "/Users/Honors/Desktop/flask-testing/lib/python3.5/site-packages/werkzeug/serving.py", line 633, in run_simple 
application = DebuggedApplication(application, use_evalex) 
File "/Users/Honors/Desktop/flask-testing/lib/python3.5/site-packages/werkzeug/debug/__init__.py", line 169, in __init__ 
if self.pin is None: 
File "/Users/Honors/Desktop/flask-testing/lib/python3.5/site-packages/werkzeug/debug/__init__.py", line 179, in _get_pin 
self._pin, self._pin_cookie = get_pin_and_cookie_name(self.app) 
File "/Users/Honors/Desktop/flask-testing/lib/python3.5/site-packages/werkzeug/debug/__init__.py", line 96, in get_pin_and_cookie_name 
h.update('cookiesalt') 
TypeError: Unicode-objects must be encoded before hashing 

Содержание app.py являются:

from flask import Flask 
app = Flask(__name__) 

@app.route('/') 
def hello_world(): 
    return 'Hello World!' 

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

pip list говорит, что содержание окружающей среды являются:

Flask (0.10.1) 
Flask-Login (0.3.2) 
Flask-WTF (0.12) 
itsdangerous (0.24) 
Jinja2 (2.8) 
MarkupSafe (0.23) 
pip (7.1.2) 
setuptools (18.2) 
Werkzeug (0.11) 
wheel (0.24.0) 
WTForms (2.0.2) 

Все остальные мои виртуальные среды работают так, как ожидалось.

+0

Это работает для меня. Но, возможно, вам нужно «вернуть» Hello World! ». Encode ('utf8')'? –

ответ

9

Похоже ошибка: соответствующий вопрос Werkzeug 0.11 with Flask 0.10.1 and 'app.debug = True' won't start. #798

создать новую виртуальную среду, используя python3.5 и встретить ту же ошибку, но если я не использую режим отладки, это нормально.

И, как говорится в номере, понижение рейтинга Werkzeug до 0,10.4 кажется сработавшим. Вы можете попробовать.

+1

Эта ошибка подтверждена и должна быть исправлена ​​в Werkzeug 0.11.1 –

Смежные вопросы