我正在尝试创建对 Magento 2 REST API 的请求:
$_method = 'GET';
$_url = 'http://host/rest/V1/categories/list/?searchCriteria[currentPage]=0';
我使用 oauth 并拥有所有 token (消费者、消费者 secret 、 token 和 token secret )但是当我创建请求时收到错误响应:
{"message":"Invalid signature"}
我还尝试在 POSTMAN 中创建查询,一切正常。我不明白这一点。哪里错了?
My Code适用于:
$_method = 'GET';
$_url = 'http://host/rest/V1/products/:sku';
但不适用于:
$_method = 'GET';
$_url = 'http://host/rest/V1/categories/list/?searchCriteria[currentPage]=0';
有人可以帮助我吗? :( 非常感谢。
最佳答案
目前,我发现的唯一友好的解决方案是使用基于 token 的身份验证而不是 oauth
这可能不是最好的解决方案,但签名错误的问题不仅与多维数组有关,还与空格(也许还有其他东西)有关。例如,当您在 sku 中有一个空格时,products/:sku 将返回相同的错误,这让我认为这是 magento 的内部问题。
关于php - 无效的签名 REST API Magento 2,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49174995/