通过 Magento OAuth API,我成功获得了 access_token 和 access_token_secret。 获取这些的调用需要有效的签名。由于我使用的是 plainOAuth 库,并且我能够签署有效的授权请求,因此我怀疑该库不是问题所在。
问题: 一旦我使用 token 和消费者 token 进行 REST 调用“test.magentohost.com/api/rest/products”,我就会得到响应无效签名。该签名是通过库使用消费者/访问 token secret 进行签名的,并且(我认为)所有参数都在 header 中。 我希望任何人都能看到我标题中的错误,这让我发疯!
这是我的“授权” header 。
oauth_realm="",
oauth_timestamp="1340011522",
oauth_nonce="ff5c167677069d9770d5cfc1dba12e0fc1d924f9",
oauth_signature_method="HMAC-SHA1",
oauth_consumer_key="ic88q1nq0iitd9tmowz6bs3dzg2d07ng",
oauth_version="1.0",
oauth_token="uye05e0pb0f8dap1ovglecxoq6ziee35",
oauth_signature="G%2Frl7S%2Bw57pjCk8xk1DMpOLkjxI%3D"
最佳答案
我认为 Magento Core 内部存在错误。我刚刚在这里提交了错误报告:http://www.magentocommerce.com/bug-tracking/issue?issue=14307 (不幸的是,您必须登录 magento 站点才能看到它)。
基本上,它们在计算服务器签名时包含客户端签名,然后比较两者,但总是失败。
请告诉我你是如何解决这个问题的?
关于rest - Magento REST API 签名无效,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11080163/