如何使用OAuth 1.0身份验证方法通过HTTP访问WooCommerce REST API?
有一份关于此的文件,但我不清楚。
答案 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