python - Flask-login request_loader not working? -


i'm trying implement basic auth on flask application flask-login extension. following documentation tried example request loader, gives me 401 unauthorized error, while depreciated header_loader works perfectly, doing wrong or there bug in request_loader.

i use following request_loader:

login_manager = loginmanager(app)  @login_manager.request_loader def load_user_from_request(req):     print req.headers   # see happens     user = models.werknemer.query.first() #this user exists, returns user     return user 

my protected view:

@app.route("/test") @login_required def index():     return 'ok' 

and request code:

import requests requests.auth import httpbasicauth  test_req = requests.get('http://localhost:5000/test', auth=httpbasicauth('test', 'test')) print test_req.content 

when run request code returns:

<!doctype html public "-//w3c//dtd html 3.2 final//en"> <title>401 unauthorized</title> <h1>unauthorized</h1> <p>the server not verify authorized access url requested.  either supplied wrong credentials (e.g. bad password), or browser doesn't understand how supply credentials required.</p> 

when leave out auth part of request returns protected view. why flask not accepting basic auth header ?

i'm taking pluralsight's course on this , got same error. worked after corrected syntax in setup of authentication.

# configure authentication login_manager = loginmanager() login_manager.session_protection = 'strong' login_manager.login_view = 'login' login_manager.init_app(app) 

i had typed last line incorrectly , got 404 error. fixed line , worked.


Comments

Popular posts from this blog

user interface - How to replace the Python logo in a Tkinter-based Python GUI app? -

objective c - Greedy NSProgressIndicator Allocation -

how to set an OCR language in Google Drive -