我只有消费者密钥和消费者秘密。如何获取要在 Postman REST 请求中使用的令牌和令牌密钥?
首先,您想要请求有效的 OAuth 令牌和密钥。通过使用 oauth_callback 的 GET 参数点击 Magento 商店的 /oauth/initiate URL 来完成此操作。我们将使用 httpbin,以便我们可以回显传递给回调的任何内容。确保您在 Postman 的 OAuth 1.0 设置中选中了“自动添加参数”。
这将为您提供一个 oauth_token 和 oauth_token_secret,它们只是临时的。这些被称为“请求令牌”和秘密。将这些值保存在某处,因为稍后您将需要它们。
现在,将一个新的常规 HTTP 请求组装到 Magento 商店的 /admin/oauth_authorize URL。这将返回一个登录表单,您可以在其中接受 oauth 令牌并授权您的应用程序,但是由于我们使用 Postman,我们无法与该表单交互。
相反,查看源代码并提取 form_key 隐藏输入值。然后组装一个新的 HTTP 请求来伪造授权表单的提交。确保它是 POST 请求。您的新 HTTP 请求应如下所示。
现在,您需要实际确认授权。只需使用 oauth_token 作为参数向 Magento 商店的 /admin/oauth_authorize/confirm URL 发出 GET 即可。当您发送此请求时,它将从第一步重定向到您的 oauth_callback。现在,您可以明白为什么我们在第一步中使用 httpbin 作为回调了。
好的。所以,我们快到家了。最后一个难题是同时使用 oauth_token、oauth_secret 和 oauth_verifier 来获取有效且持久的“访问令牌”。因此,从第一步中获取 oauth_token_secret,然后像这样组合并组装一个新的 OAuth 请求。
您应该获得返回的令牌和秘密。这些永远不会过期!您可以使用它们来查询产品和东西。
现在,您可以像这样组装 OAuth 请求。 编辑:注意,您必须选中“将参数添加到标头”复选框才能使 Magento REST 调用正常工作。