首页 文章

如何使用带有 Ogent 的 magento REST api 的 POSTMAN rest 客户端。如何获得令牌和令牌秘密?

提问于
浏览
19

我是 magento REST API 的初学者,我将如何获得令牌和令牌秘密来填写 Postman REST resquest。我只有消费者密钥和消费者秘密。请提供我要遵循的步骤。

3 回答

  • 62

    首先,您要申请有效的 OAuth 令牌和机密。通过使用 oauth_callback 的 GET 参数命中 Magento 商店的/oauth/initiate URL 来执行此操作。我们将使用 httpbin,以便我们可以回显传递给回调的任何内容。确保在 Postman 的 OAuth 1.0 设置上选中了“自动添加参数”。

    OAuth 令牌请求

    这将给你一个 oauth_token 和 oauth_token_secret,这只是暂时的。这些被称为“请求令牌”和秘密。将这些值保存在某处,因为稍后您将需要它们。

    OAuth 令牌响应

    现在,将新的常规 HTTP 请求组装到 Magento 商店的/admin/oauth_authorize URL。这将返回一个登录表单,您可以在其中接受 oauth 令牌并授权您的应用程序,但是由于我们使用的是 Postman,因此我们无法与表单进行交互。

    OAuth 授权表

    而是查看源并拉出 form_key 隐藏的输入值。然后组装一个新的 HTTP 请求以伪造授权表单的提交。确保它是 POST 请求。您的新 HTTP 请求应如下所示。

    OAuth 授权表单提交

    现在,您需要实际确认授权。只需使用 oauth_token 作为参数向 Magento 商店的/admin/oauth_authorize/confirm URL 发出 GET。当您发送此请求时,它将从第一步重定向到您的 oauth_callback。现在,您可以看到为什么我们在第一步中使用 httpbin 作为回调。

    OAuth 授权确认

    好。所以,我们几乎回家了。最后一个难题是使用 oauth_token,oauth_secret 和 oauth_verifier all 来获得有效且持久的“访问令牌”。因此,从第一步开始采用 oauth_token_secret,然后组合并组合一个新的 OAuth 请求。

    OAuth 令牌

    你应该得到一个返回的令牌和秘密。这些永远不会过期!您可以使用它们来查询产品和内容。

    OAuth 令牌响应

    现在,您可以像这样组合您的 OAuth 请求。 **编辑:**注意,您必须选中“将参数添加到标题”复选框才能使 Magento REST 调用正常工作。

    OAuth REST 请求

  • 2

    @Franklin P Strube 很遗憾,我没有足够的声誉来添加评论。

    我想补充以下内容。 Magento REST API 在 URL 和 Oauth 标头上不需要两个 outh 参数。这实际上没有在上面说明。请参阅最后一个说明,您需要“将 params 添加到标题”。你需要这样做,但是当你这样做时,你会发现它发送了 url params 和 oauth 标题。你不需要 url parms,没有它们就可以正常工作。顺便说一下:富兰克林的回应非常好!

  • 1

    Postman 版本中的示例请求 6.x.x

    image.png

    这个请求的回应是

    image.png

    您可以从 Magento Admin 获取此凭据。单击“集成”页面中的编辑图标。

    image.png

相关问题