Python请求和Flask应用程序未重定向到登录页面

时间:2018-09-05 11:45:08

标签: python-3.x flask http-headers python-requests session-cookies

该应用程序是jupyterlab登录页面的包装。它采用了用户凭据,并且在成功登录后必须重定向到在jupyterlab页面上签名的

@app.route('/jupyterlab',methods=['POST'])
def display():
    username = request.form['username']
    password = request.form['password']
    valid = validate_user(username,password)
    if not valid:
        flash('Invalid Username or Password!')
        return redirect(url_for('index'))

    url = 'http://jupyterlab.com:8000/login'
    s = requests.session()
    payload = {'username':'john',
            'password':'john123'}
    resp = s.post(url,data=payload)
    print('response',resp,resp.url) #signed-in as expected in terminal
    return redirect(resp.url)       #again asks for sign-in in browser
控制台上的

resp.url是http://jupyterlab.com:8000/user/john/lab

浏览器上的

resp.url提供http://jupyterlab.com:8000/hub/login?next=%2Fhub%2Fapi%2Foauth2%2Fauthorize%3Fclient_id%3Duser-john%26redirect_uri%3D%252Fuser%252Fjohn%252Foauth_callback%26response_type%3Dcode%26state%3DeyJ1dWlkIjogImY1NWU4YzUzMGVmMjRmMDViNTZhOTk4YzMxMDk1MTE2IiwgIm5leHRfdXJsIjogIi91c2VyL3gwOTg4ODAvbGFiIn0

with unsuccessful login

0 个答案:

没有答案