[英]Woocommerce rest api invalid signature (error 401) on post request
我正在為一家woocommerce商店開展Ionic 2項目。 我在我的應用程序中使用Woocommerce REST API ,並使用Postman Chrome App在OAuth-1.0上測試API。 我正在使用GET請求獲得正確的響應,但對於POST請求,我收到簽名不匹配的錯誤,如:
{
"code": "woocommerce_rest_authentication_error",
"message": "Invalid Signature - provided signature does not match.",
"data": {
"status": 401
}
}
我掙扎了幾天(使用角度),最后發現這是一個CORS問題。 瀏覽器實際上發送了一個OPTIONS請求,woocommerce-api收到該請求作為GET。 使用此工具有助於排除故障。
最后通過如下設置我的.htaccess來解決它;
RewriteCond %{REQUEST_METHOD} OPTIONS
RewriteRule ^(.*)$ $1 [R=200,L,E=HTTP_ORIGIN:%{HTTP:ORIGIN}]]
Header set Access-Control-Allow-Origin "*"
Header always set Access-Control-Allow-Credentials "true"
Header always set Access-Control-Max-Age "1000"
Header always set Access-Control-Allow-Headers "X-Requested-With, Content-Type, Origin, Authorization, Accept, Client-Security-Token, Accept-Encoding"
Header always set Access-Control-Allow-Methods "POST, GET, OPTIONS, DELETE, PUT"
您可以參考此答案以獲取詳細說明
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.