我想开发一个封装OAuth 2.0功能的SDK。我检查了OAuth 1.0和amp;之间的差异。 2.0,我对授权标题(1.0和}感到困惑 2.0),可以使用HTTP“授权”标头传输OAuth 1.0协议参数,但我找不到当前OAuth 2.0草案中描述的内容。
OAuth 2.0是否支持授权标头?
在OAuth 1.0中,您的标题如下所示:
Authorization: OAuth realm="Example",
oauth_consumer_key="0685bd9184jfhq22",
oauth_token="ad180jjd733klru7",
oauth_signature_method="HMAC-SHA1",
oauth_signature="wOJIO9A2W5mFwDgiDvZbTSMK%2FPY%3D",
oauth_timestamp="137131200",
oauth_nonce="4572616e48616d6d65724c61686176",
oauth_version="1.0"
答案 0 :(得分:182)
对于那些寻找如何在标题中传递OAuth2授权(访问令牌)的示例(而不是使用请求或正文参数),以下是它的完成方式:
Authorization: Bearer 0b79bab50daca910b000d4f1a2b675d604257e42
答案 1 :(得分:32)
您仍然可以在OAuth 2.0中使用Authorization标头。授权标头中指定了一个承载类型,用于OAuth承载令牌(意味着客户端应用只需要呈现(“承担”)令牌)。标头的值是客户端从授权服务器接收的访问令牌。
此规范中记录了这些内容:https://tools.ietf.org/html/rfc6750#section-2.1
E.g:
GET /resource HTTP/1.1
Host: server.example.com
Authorization: Bearer mF_9.B5f-4.1JqM
mF_9.B5f-4.1JqM 是您的OAuth访问令牌。