使用OAuth 1.0对WooCommerce REST API进行身份验证

时间:2015-11-30 10:04:23

标签: rest woocommerce

如何使用OAuth 1.0身份验证方法通过HTTP访问WooCommerce REST API?

有一份关于此的文件,但我不清楚。

Woocommerce api error

1 个答案:

答案 0 :(得分:0)

1)为请求设置HTTP方法:

GET

2)设置基本请求URI - 这是没有查询字符串参数的完整请求URI - 并且根据RFC 3986进行URL编码:

  

http://www.example.com/wc-api/v1/orders

     

编码时:

     

的http%3A%2F%2Fwww.example.com%2Fwc-API%2Fv1%2Forders

3)收集并规范化查询字符串参数。这包括除签名之外的所有oauth_ *参数。参数应根据RFC 3986(PHP中为rawurlencode)通过URL编码进行规范化,并且百分比(%)字符应进行双重编码(例如%变为%25。< / p>

4)在PHP中以字节顺序(uksort( $params, 'strcmp')排序参数

5)使用编码的等号(%3D)加入每个参数:

oauth_signature_method%3DHMAC-SHA1

6)使用编码的&号(%26)加入每个参数键/值:

oauth_consumer_key%3Dabc123%26oauth_signature_method%3DHMAC-SHA1

7)通过将HTTP方法,编码基本请求URI和编码参数字符串与未编码的符号符号(&)相结合,形成要签名的字符串:

GET&http%3A%2F%2Fwww.example.com%2Fwc-api%2Fv1%2Forders&oauth_consumer_key%3Dabc123%26oauth_signature_method%3DHMAC-SHA1

8)使用字符串键和您的消费者密钥

生成签名

如果您在生成正确的签名时遇到问题,则需要查看字符串,以便对编码错误进行签名。身份验证源也有助于了解如何正确生成签名。

取自here