XQuery/OAuth
外观
< XQuery
您想登录到支持 OAuth 协议的 Web 服务。
OAuth 是一种开放协议,允许从桌面和 Web 应用程序以简单且标准的方式进行安全的 API 授权。与 OpenID 一样,OAuth 允许其他 Web 服务使用您的私人数据,而无需提供您的密码。
消费者密钥 - 当您以开发者身份在 OAuth 服务提供商处注册时,他们会向您发送一个 API 密钥,供您在其服务中使用。这通常是一个大约 65 个字符的字符串,由数字和字母组成。
服务提供商 - 像 LinkedIn、Google 或 Twitter 这样的组织,它们拥有一些受 Web 服务保护的您的数据。
令牌 - 在 AOuth 数据交换中使用的一种相当长的计算机生成的字母和数字字符串。这些字符串难以猜测,并且与一个密钥配对,以防止令牌被未经授权的方使用。OAuth 定义了两种类型的令牌:请求令牌和访问令牌。
我们将按以下步骤执行此过程
- 请求令牌
- 签名
- 等等。
以下是一个包含 OAuth 信息的结构示例(来自 28msec 网站)
<oa:service-provider realm="example.com/oauth">
<oa:request-token>
<oa:url></oa:url>
<oa:http-method>GET</oa:http-method>
</oa:request-token>
<oa:user-authorization>
<oa:url></oa:url>
</oa:user-authorization>
<oa:access-token>
<oa:url></oa:url>
<oa:http-method>GET</oa:http-method>
</oa:access-token>
<oa:supported-signature-methods>
<oa:method>HMAC-SHA1</oa:method>
</oa:supported-signature-methods>
<oa:oauth-version>1.0</oa:oauth-version>
<oa:authentication>
<oa:consumer-key>your consumer key</oa:consumer-key>
<oa:consumer-key-secret>your consumer secret</oa:consumer-key-secret>
</oa:authentication>
</oa:service-provider>
- 来自 Joe Wicentowski 的 OAuth 和 Twitter XQuery 模块示例
- Joe Wicentowski 在 eXist 上关于如何使用 OAuth 通过 XQuery 访问 Twitter 的优秀文章
- https://oauth.ac.cn/
- http://hueniverse.com/2007/10/beginners-guide-to-oauth-part-ii-protocol-workflow/
- http://sausalito.28msec.com/latest/index.php?id=working_with_oauth
- 服务提供商结构的 XML 定义示例
- MarkLogic Facebook OAuth 模块
- Norm Walsh 关于 OAuth 的文章
- 用于 BaseX 的 OAuth
- Google 开发者 API