1

对于那些了解 SE API 的人,
我正在为 SE API 制作一个包装器。
问题是我没有服务器或网站,所以我不能拥有redirect_uri我的网站。

我认为我可以使用stackexchange.com/oauth/login_success.
我还意识到,在用户进行身份验证后,如果再次打开同一页面,我将被重定向到redirect_uri.

我怎样才能得到我被重定向到的 URL ???

对于那些不了解 SE API 的人
考虑一下:

  1. 我去link1说,xyz.com/abc?a=10&b=20
  2. 它会将我重定向到 link2 ( abc.com/xyz?add=30&mul=200)

我想获取link2的URL。

另外,
我在代理后面,所以我使用开启器来处理代理。(如果这很重要)

我正在使用urllib2,所以更喜欢使用相同的解决方案,但请将您的答案限制在内置库中

4

1 回答 1

0

如果你设置一个简单的本地服务器呢?例如,您可以使用 Flask。此外,如果您只想使用 StackExchange API,您可以使用预构建的客户端,例如 rauth 可能完全符合您的要求。如果您想设置一个简单的服务器并在本地运行它,请查看 rauth Facebook 登录示例。然后您要做的是重定向到您的本地主机,例如该示例中的授权视图:

def login():
    # this will map to your local server
    redirect_uri = url_for('authorized', _external=True)

    params = {'redirect_uri': redirect_uri}
    return redirect(facebook.get_authorize_url(**params)

完全披露,我保持沉默。

于 2013-03-29T00:34:29.187 回答