我有一个项目规范,可以RESTful地访问第三方远程API并需要oAuth.规范包括以下文本:
访问API需要使用OAuth协议.每个组织的共享密钥/访问密钥组合可防止未授权方访问.由于服务端点标识组织,因此不希望在封装REST请求的OAuth标头中传递其他参数.
其中,我不完全理解以下内容:
由于服务端点标识组织,因此不希望在封装REST请求的OAuth标头中传递其他参数.
oauth_*参数可以在Authorization标头中传递,也可以作为URL参数传递.如果您传递oauth_*Authorization标头中的值,我不会在标头中包含其他值,因此我将该引号视为含义.
OAuth params作为标题:
GET /initiate?foo=bar HTTP/1.1
Host: photos.example.net
Authorization: OAuth realm="Photos",
oauth_consumer_key="dpf43f3p2l4k3l03",
oauth_signature_method="HMAC-SHA1",
oauth_timestamp="137131200",
oauth_nonce="wIjqoS",
oauth_callback="http%3A%2F%2Fprinter.example.com%2Fready",
oauth_signature="74KNZJeDHnMBp0EMJ9ZHt%2FXKycU%3D"
Run Code Online (Sandbox Code Playgroud)
URL中的OAuth参数:
GET /initiate?foo=bar&oauth_consumer_key=dpf43f3p2l4k3l03&oauth_signature_method=HMAC-SHA1&oauth_timestamp=137131200&oauth_nonce=wIjqoS&oauth_callback=http%3A%2F%2Fprinter.example.com%2Fready&oauth_signature=74KNZJeDHnMBp0EMJ9ZHt%2FXKycU%3D HTTP/1.1
Host: photos.example.net
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
4224 次 |
| 最近记录: |