Python 使用Flask、HTTPDigestAuth和redirect(),如何保持身份验证?

Python 使用Flask、HTTPDigestAuth和redirect(),如何保持身份验证?,python,authentication,redirect,flask,Python,Authentication,Redirect,Flask,我对这里的每件事都知道一点点,但还不足以把它们放在一起。。。我知道如何做到以下几点: 通过各种途径设置烧瓶应用程序 使用flask.redirect()将浏览器重定向到外部网页 使用requests.auth.HTTPDigestAuth() 我想做的是: 我就是不能把它们拼在一起。我的意图是: 当用户点击一个内部网页上的链接时(比如说,该路径被称为“indigo”),它就会转到我在该路径上的功能 然后,该路由功能将使用硬编码凭据自动登录用户 然后我想返回html内容(resp.conten

我对这里的每件事都知道一点点,但还不足以把它们放在一起。。。我知道如何做到以下几点:

  • 通过各种途径设置烧瓶应用程序
  • 使用flask.redirect()将浏览器重定向到外部网页
  • 使用requests.auth.HTTPDigestAuth()
我想做的是: 我就是不能把它们拼在一起。我的意图是:

  • 当用户点击一个内部网页上的链接时(比如说,该路径被称为“indigo”),它就会转到我在该路径上的功能
  • 然后,该路由功能将使用硬编码凭据自动登录用户
  • 然后我想返回html内容(
    resp.content
    ),但要确保位置设置为
    ”http://indigosvr.local“
    因此,该页面上的所有链接都与该外部页面相关
  • 错误代码: 错误代码的结果: 位置栏中的URL保持为旧位置(不重定向)。每个图像链接都锚定在旧的URL位置,而不是新的重定向URL


    我缺少了什么简单的元素?

    嗯,HTTP不是这样工作的。无法使用Diegest Auth.Hmm从服务器登录客户端。也许我不理解你。我的浏览器通常与服务器1通信。我想点击SERVER1(Flask)上的链接,让Flask服务器点击SERVER2的w/Digest Auth creds,然后将这些creds传递回我的浏览器。这是不可能的。
    @app.route('/indigo', methods=['GET'])
    def go_to_indigo():
      URL      = 'http://hiddenurl.com:8176/controlpage?name=Chez%20Private'
      Username = 'user'
      Password = 'password'
      from requests.auth import HTTPDigestAuth
      getResp = requests.get(URL, auth=HTTPDigestAuth(Username, Password))
      return (getResp.content)