【问题标题】:Amazon REST API using OAuth使用 OAuth 的 Amazon REST API
【发布时间】:2013-06-24 18:26:58
【问题描述】:

我使用注册表单构建了一个移动网站。此注册表单将使用 API。以下是他们提供的部分文档。

我不知道从哪里开始。但是我可以在这上面使用 PHP 吗?你有任何关于如何做到这一点的资料或步骤吗?

公司 ABC = 客户

客户端遵循允许资源的具象状态传输 (REST) 标准 使用一组标准的 GET、POST、PUT、DELETE HTTP 请求创建、修改和提取。 与客户端的通信遵循 REST 架构约束,包括无状态和可缓存。

所有请求均通过 SSL 执行。所有响应都作为 JSON 对象返回。

API 认证

客户端的 REST API 使用广泛使用的 Amazon 标准进行身份验证。使用成员服务进行身份验证需要附加到身份验证标头的签名字符串。

签署请求所需的数据

● 日期格式 例如:“Mon Jan 01 HH:MM:SS GMT 2013” ○ 您还需要将此确切的日期字符串作为日期标题

● HTTP 方法 ( 获取、发布、放置、删除……)

● 正文 NULL 如果 HTTP 方法不是 POST 或 PUT。这是要发送到的数据 服务器。

● 路径 主机后的请求路径例如:/Members/01kjhkjh789abcdef01234567 ○ 需要前缀斜线。 ○ 尾部斜线将导致授权失败。

■ 就本文档而言,ID 将是 kjhkh75hgkuyf56465r65465564

■ 就本文档而言,秘密将是 75456464674676746547fhgv2tcoygvhgvrUcTVD5GvYimli

客户成员

构建签名请求

  1. 如果存在 Body,请对其执行 MD5 操作。

  2. 构建要签名的字符串:

    HTTP_METHOD + “\n” + BODY_MD5 + “\n” + 日期 + “\n” + 路径

    一些例子:

    一个。 “得到 周一 1 月 1 日 HH:MM:SS GMT 2013 /成员/0123456789abcdef01234567”

    b. “邮政 e9d263d07a1533984e80ef808bd4efff 周一 1 月 1 日 HH:MM:SS GMT 2013 /成员”

    c。 “放 96db961798e74718065e7a06d6d14110 周一 1 月 1 日 HH:MM:SS GMT 2013 /会员/012mnb3456789abcdebmbmnbf01234567“

  3. 执行 hashhmac/ 对刚刚构建的字符串进行 sha1 散列操作。 一个。它的输出应该是二进制/原始而不是十六进制。

  4. Base64 编码散列字符串。

  5. 将标识符添加到授权方案的前缀 this 如下: “客户” + API_ID + “:”

一个。如果您的 API_ID 是“606e1a”,您的标识符将是 “客户 606e1a:” 例子

○ 对于上面的 GET 示例,输出将是:

客户 lkmmklmlmlkm06e1a:l6PxyV73V226mklmklmkklB2XvaBsoWaE++Fo=

○ 对于上面的 POST 示例,输出将是:

客户 klmlkmklmklmklm6e1a:FnSfYYxU+RTJlmlmlmlknSr/48yLYgk1eQ0=

○ 对于上面的 PUT 示例,输出将是:

客户 lkmlkmklmlkm1a:ahByLYh9Wc3yhlmklmlm1F+N9ilkmlmkmLFA7B12w=

【问题讨论】:

    标签: php api rest oauth


    【解决方案1】:

    我会首先使用 FF Poster(例如)来使用/了解 API,以及您应该如何调用它们并使用它们的响应。

    在调用 API 的技术方面......您当前的应用程序堆栈是什么?如果 php,this 看起来不错 - 或谷歌“php rest 客户端”。我使用过 Java REST 客户端,例如 jersey 和 resteasy。

    【讨论】:

    • 我只需要发布 html 注册表单并检查电子邮件是否存在。你有示例源代码可以学习吗?
    猜你喜欢
    • 2014-09-21
    • 2013-06-18
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-09-20
    • 2016-01-09
    • 2019-10-24
    • 1970-01-01
    相关资源
    最近更新 更多