首页 开发文档 我的应用
微盘开发者协议
API接口文档
授权机制说明
权限与规则说明
API接口说明
错误代码说明
SDK与演示
接口迁移指南

授权机制说明

OAuth2.0概述

  • 目前,新浪微盘开放平台的用户身份鉴权采用OAuth2.0方式,开发者需要根据各自的应用场景,选择适用的OAuth2.0授权流程:
    • 1、网站或者站外Web应用,请参考:Web应用的验证授权(Authorization Code)
    • 2、桌面和无线客户端应用,请参考:Web应用的验证授权(Authorization Code),无线客户端可以直接使用官方SDK,通过WebView方式使用授权页。

  • 授权基本流程如下:
  • (注:Client指第三方应用,Resource Owner指用户,Authorization Server是我们的授权服务器,Resource Server是API服务器)
  • OAuth是一种国际通用的授权方式, OAuth2.0的官方技术说明可参看http://oauth.net/2/

接口文档

接口 说明
OAuth2/authorize 请求用户授权Token
OAuth2/access_token 获取授权过的Access Token

OAuth 2.0 验证

  • 获取 Access Token,请参见 授权相关 的接口说明
  • 使用Access Token 调用微盘API 的方式:
  • 1.直接使用参数传递参数名为 access_token (HTTPS: POST/GET)
    优先级:高
    形式: https://openapi.vdisk.me/2/ … &access_token=[ACCESS_TOKEN]
  • 2.在请求头里添加
    优先级:中
    形式为在Header里添加: Authorization: OAuth2[空格][ACCESS_TOKEN]

OAuth2.0 错误码

错误码描述
21322重定向地址不匹配
21323请求不合法
21324client_id或client_secret参数无效
21325提供的Athorization code是无效的、过期的或已撤销的
21326客户端没有权限
21327token过期
21328不支持的 GrantType
21329不支持的 ResponseType
21330用户或授权服务器拒绝授予数据访问权限
21331系统繁忙,请稍后再试
21332参数异常
21333用户名或密码错误
21334用户状态异常,请先解除异常

授权失效

  • 程序一定要具备足够的健壮性,如果用户的access_token失效,需要引导用户重新授权。失效原因有以下几个:
    1. 用户取消了对应用的授权
    2. access_token自然过期
    3. 用户修改了密码,冻结了对应用的授权
    4. 新浪发现用户帐号被盗,冻结了用户对应用的授权