python - 如何在本地针对 OAuth 进行开发?

标签 python oauth

我正在构建一个需要与 OAuth 服务提供者通信的 Python 应用程序。 SP 要求我指定回调 URL。指定 localhost 显然是行不通的。我无法设置面向公众的服务器。除了支付服务器/托管费用之外还有什么想法吗?这甚至可能吗?

最佳答案

两件事:

  1. 如果您未指定回调 URL,如果它给您一个错误,则该 OAuth 服务提供商违反了 OAuth 规范。 callback_url 为 spec'd to be an OPTIONAL parameter .

  2. 但是,撇开迂腐不谈,您可能希望在用户完成后收到回调,以便您知道可以将请求 token 兑换为访问 token 。 Yahoo's FireEagle developer docs有很多关于如何做到这一点的重要信息。

即使在第二种情况下,回调 URL 实际上也不必在 Internet 上可见。 OAuth 服务提供者会将用户用来提供其用户名/密码的浏览器重定向到回调 URL。

执行此操作的两种常见方法是:

  1. 在您的应用程序中创建一个哑 Web 服务,该服务在某个端口(例如 http://localhost:1234/)上监听完成回调,或者
  2. 注册一个协议(protocol)处理程序(您必须查看您的操作系统的文档,专门了解如何执行此操作,但它可以使 之类的东西正常工作)。

(我相信您正在描述的流程示例 lives here。)

关于python - 如何在本地针对 OAuth 进行开发?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/670398/

相关文章:

javascript - Slack oauth.access API 返回 bad_redirect_uri 而不请求 redirect_uri

oauth - 每次我提出请求时,Youtube oAuth 提示授权窗口

python - 如何调用名称中包含空格的方法?

python - pandas hist 上的 matplotlib 参数的语法

python - 设置颜色以用于使用 matplotlib contourf 绘制的数组屏蔽值

api - OAuth 2.0 两足认证与 SSL/TLS

node.js - OAuth 2.0 : Allowing for Client-Side (Implicit/Javascript) Authentication in a node. js/快速 API

python - 将 Django Web 应用程序数据库连接到 Pythonanywhere 上的 postgresql

python - 如何从本地计算机或网络资源将图像或图片嵌入到 jupyter notebook 中?

php - 如何从谷歌获取 'oauth_consumer_key' 和 'oauth_consumer_secret'