使用令牌重定向烧瓶

时间:2017-01-12 07:38:04

标签: python redirect flask

我是一名新人,在重定向页面时我感到困惑。

所以这就是问题,我必须重定向到我的登录页面的第三方 例如:

@app.route('/hk/login/3rdparty', methods=['GET'])
def login_3rdparty():
  if request.method == 'GET':
    app_id = 'xxxxx'
    secret = 'xxxxx'
    data = 3rdparty.connect(app_id, secret)
  return data

当我指向网络时,它会像这样返回:

{"url":"http://demo3.3rdparty.com/partner/code/hk?token=sometoke-sometoken-sometoken"}

如何从返回json重定向?因此,在我指向/ hk / login / 3rdparty之后,它将使用其网址背面的令牌重定向到网络

抱歉我的英文不好

1 个答案:

答案 0 :(得分:1)

如果问题中的data变量包含您需要的json对象,则可以使用redirect()函数将用户发送到其包含的地址。您的答案结合了我们的评论,但我想添加此评论以确保其他人也能看到必要的import语句。

import json
from flask import redirect

@app.route('/hk/login/3rdparty')
def login_3rdparty():
    app_id = 'xxxxx'
    secret = 'xxxxx'
    raw_data = 3rdparty.connect(app_id, secret)
    data = json.loads(raw_data)
    return redirect (data['url'])

如果这是此功能使用的唯一方法,我甚至不需要指定GET作为方法。保持良好的工作,SNOW。