真的很抱歉,如果这听起来很糟糕,但我一直在玩Python在过去的几天。你知道吗
我一直在尝试做一个桌面客户端。长话短说,我已经设法使它生成一个授权的网址。就像http://www.samplesample.com/authorize/oauth_token=[bigassstringhere]&oauth_callback=http://sometokenrecievingurl.com
转到那个URL,我被重定向到http://sometokenrecievingurl.com?oauth_token=[anotherbigassstring]&oauth_verifier=[yetanotherbigassstring]
所以我的问题是,有没有一种方法可以获得oauth\u令牌和oauth\u验证器值,而不必手动复制和粘贴URL进行授权?python有没有办法自己检查生成的URL,检查它重定向到的URL,然后切掉oauth\u令牌和oauth\u验证器部分?你知道吗
再次抱歉,如果这听起来很简单的人在那里。我不太确定,因为我是新来的,我一直在寻找相关的问题,所以没有运气。或者我只是在看错误的链接或术语。但是是的,任何帮助都将不胜感激。你知道吗
编辑
好吧,所以我继续玩,我重申我完全忘了这一步。生成的URL实际上会将您指向一个页面,在该页面中,我需要单击是否允许访问。单击“允许”后,这是我唯一一次被重定向到http://sometokenrecievingurl.com?oauth_token=[anotherbigassstring]&oauth_verifier=[yetanotherbigassstring]
所以我想知道,如何从一个打开的浏览器中提取这些字符串?你知道吗
根据url中存在的
oauth_verifier
,您正试图通过OAuth 1.0a授权流。你知道吗如OAuth 1.0a specification中所述:
这意味着您应该运行一个web服务器来使用这个授权协议。你知道吗
OAuth 1.0a授权流大致如下所示:
oauth_token
和oauth_token_secret
。您应该将oauth_token_secret
保存到一些持久性存储中,比如DB或session,因为您稍后将需要它。你知道吗oauth_token
,而oauth_callback
URL是您服务器的URL,提供者在授予用户对您的应用程序的访问权限后将重定向用户。你知道吗oauth_callback
URL。在这里,您应该从请求中获取oauth_verifier
和oauth_token
,并检索存储在步骤1中的oauth_token_secret
,然后在服务器端获取中将它们全部发送到提供者的访问令牌URL。最后,响应应该包含oauth_token
,这是您想要的访问令牌,您可以使用它access the user's protected resources通过providers API。你知道吗如果您想在本机(非服务器)应用程序中授权用户,那么应该使用OAuth 2.0,它还支持对native applications的授权。但这也取决于供应商。你知道吗
我不建议您手动实现这一点,特别是不要使用oauth1.0a,而是使用大量的python授权框架之一。你知道吗
相关问题 更多 >
编程相关推荐