OAuth2.0学习(1-11)新浪开放平台微博认证-使用OAuth2.0调用微博的开放API

使用OAuth2.0调用API

使用OAuth2.0调用API接口有两种方式:

1、 直接使用参数,传递参数名为 access_token

URL

2、在header里传递,形式为在header里添加 Authorization:OAuth2空格abcd,这里的abcd假定为Access Token的值,其它接口参数正常传递即可。


注:所有的微博开放平台接口都部署在weibo.com域下,仅有移动端的授权接口在open.weibo.cn域。

 

授权中的其他功能

Scope

Scope是OAuth2.0新版授权页提供的一个功能,通过scope,平台将开放更多的微博核心功能给开发者,同时也加强用户隐私保护,提升了用户体验,用户在新OAuth2.0授权页中有权利选择赋予应用的功能。


Scope开放的接口文档:接口文档

 

客户端默认回调页

通常Mobile Native App没有服务器回调地址,您可以在应用控制台授权回调页处填写平台提供的默认回调页,该页面用户不可见,仅用于获取access token。


OAuth2.0客户端默认回调页:https://api.weibo.com/oauth2/default.html

 

强制登录

授权页会默认读取当前用户的微博登录状态,如果你想让用户重新登录,请在调用authorize接口时传入参数:forcelogin=true,默认不填写此参数相当于forcelogin=false。

 

取消授权回调页

开发者可以在应用控制台填写取消授权回调页,当用户取消你的应用授权时,开放平台会回调你填写的这个地址。并传递给你以下参数,source:应用appkey,uid :取消授权的用户,auth_end :取消授权的时间

OAuth2.0相关资源

以下SDK包含了OAuth2.0及新版API接口

   
下载Android SDK下载iOS SDK下载WP7 SDK
下载PHP SDK(由SAE维护)下载Java SDK下载Python SDK
下载Flash SDK下载Javascript SDK下载C# SDK

 

移动开发SDK说明文档

   
Android SDK 说明文档iOS SDK 说明文档WP7 SDK 说明文档

 

其他参考资料

OAuth是一种国际通用的授权方式, OAuth2.0的官方技术说明可参看 http://oauth.net/2/


如果你仍在使用Oauth1.0,请进入浏览相关文档。

 

OAuth2.0 错误码

微博OAuth2.0实现中,授权服务器在接收到验证授权请求时,会按照OAuth2.0协议对本请求的请求头部、请求参数进行检验,若请求不合法或验证未通过,授权服务器会返回相应的错误信息,包含以下几个参数:

  • error: 错误码
  • error_code: 错误的内部编号
  • error_description: 错误的描述信息
  • error_url: 可读的网页URI,带有关于错误的信息,用于为终端用户提供与错误有关的额外信息。


错误信息的返回方式有两种:

1. 当请求授权Endpoint:https://api.weibo.com/2/oauth2/authorize 时出现错误,返回方式是:跳转到redirect_uri,并在uri 的query parameter中附带错误的描述信息。

2. 当请求access token endpoing:https://api.weibo.com/oauth2/access_token 时出现错误,返回方式:返回JSON文本。例如:

 

JSON
1
2
3
4
5
{
     "error" "unsupported_response_type" ,
     "error_code" : 21329,
     "error_description" "不支持的ResponseType."
}


OAuth2.0错误响应中的错误码定义如下表所示:

 

错误码(error)错误编号(error_code)错误描述(error_description)
redirect_uri_mismatch21322重定向地址不匹配
invalid_request21323请求不合法
invalid_client21324client_id或client_secret参数无效
invalid_grant21325提供的Access Grant是无效的、过期的或已撤销的
unauthorized_client21326客户端没有权限
expired_token21327token过期
unsupported_grant_type21328不支持的 GrantType
unsupported_response_type21329不支持的 ResponseType
access_denied21330用户或授权服务器拒绝授予数据访问权限
temporarily_unavailable21331服务暂时无法访问
appkey permission denied21337应用权限不足


OAuth2.0相关问题,查看 OAuth2.0相关问题

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值