0

我从来没有真正使用过 API、JSON 或 OAUTH,我正在尝试在我的网站上使用 Dwolla 进行支付。由于我从未见过使用 oauth 对用户进行身份验证的过程,因此我很难弄清楚我需要放置什么,尤其是需要放置的位置。dwolla 可用的文档对我来说没有多大意义。我什至很轻松地完成了 codecademy.com 的课程,但在我的 django 项目中尝试使用它时仍然不知道从哪里开始。我使用 django-registration 允许用户在我的网站上注册,所以我应该在用户注册我的网站时使用 oauth 对用户进行身份验证,以便为他们分配一个 oauth 令牌?我是否使用模板中的链接将用户发送到 auth url,或在视图中使用代码?我是否需要创建具有外键字段的新模型以将其与我的用户关联?我真的不知道这个过程应该是什么样子,以及 Dwolla 的 API 如何与我的 django 应用程序交互。是来自 dwolla 的 python 文档,是 dwolla 的 oauth 文档。我什至尝试阅读此 oauth 指南以了解发生了什么。github 上的oauth2 概述提供了一个使用 twitter 的 API 的示例,但这让我更加困惑,因为它特定于 twitter 的 API。另外,我需要安装除 oauth2 和 dwolla 以外的任何东西吗?我知道所有的部分都在那里,我只是很难理解它们是如何组合在一起的。任何人都可以澄清我需要采取的步骤,或者至少有没有人为绝对初学者提供一个很好的教程来学习 oauth 和 API?提前感谢您的帮助。

4

1 回答 1

0

您可以在您方便的 Django 应用程序中的任何位置对用户进行身份验证。一个好地方是用户可能正在编辑他们的帐户详细信息的页面。

为了实际编写代码,您可以从 Twitter 或任何地方收起任何 oAuth 文档。oAuth 不是您需要学习如何使用的 jQuery 之类的代码库。它只是关于开发人员如何允许其用户的帐户与其他站点上的帐户对话并相信其是同一用户的一组指导方针。

核心思想是站点 #1(在本例中为 Dwolla)为站点 #2(您的站点)提供 a token,通常是一些加密的文本字符串,例如 !432d8dk*dfas&&3,可用于或多或少地登录用户在站点 #2 上时访问站点 #1。更准确地说,令牌授予用户在站点#1 登录期间同意站点#2 访问其站点#1 帐户部分的权限。

这是一个清单,列出了将您网站上每个用户的身份验证与他们在Dwolla网站上的帐户联系起来的操作清单。这是基于在 Github 上发布的 Dwolla 的 python API。请注意,这是针对 Flask 而不是 Django 应用程序的。

  1. 向 Dwolla 注册您的应用程序,以便获取您的公钥和私钥(_keys.apiKey, _keys.apiSecret 在 Dwolla 的 oAuth 示例中列出)
  2. 指示重定向 URL,oauth_return_url当用户在 Dwolla 上完成登录后,Dwolla 将重定向到该 URL。
  3. (可选,但可能是个好主意,因此用户只需在 Dwolla 的网站上进行一次 oAuth/登录)将token特定于登录 Dwolla 网站的用户存储在您的数据库中。
于 2013-04-13T01:30:05.427 回答