开发指南


Step1:创建一个应用

校园或者个人开发者若要继续扩展应用,首先要在开放平台创建一个应用,应用是您能够调用开放平台提供API的唯一授权认证信息标识,也就是说只有通过应用提供的授权标识信息才能够调用开放平台提供的API。

请登录V绿岛开放平台,进入 创建应用页面,输入完整的应用信息完成应用的创建。

Step2:用户身份验证

应用创建完成之后,您可以得到应用的授权令牌信息,这一步里面您就可以根据令牌信息来连接开放平台调用API了。

开放平台用户身份验证遵循OAuth 2.0 协议,有关OAuth 2.0协议可以参考 http://oauth.net/2/ 。API请求需要在用户授权同意之后才能够正常执行,最终您将得到一个访问令牌,根据该访问令牌您就能够调用API了。

下面介绍身份验证的流程

用户认证

用户认证主要指在完成用户身份验证的过程。应用创建完成之后,您可以拿到APPKey和APPSecret信息,这是您调用API的凭证信息。

一般来说,在您的应用里面应该放有“用V绿岛账户登录”的按钮或者链接,通过它跳转到开放平台OAuth2用户认证窗口,激活该窗口的时候您应该通过Http的Get方式传递您的APPKey和转跳URL信息(这个转跳URL指的是在经过应用授权之后跳转的应用地址,用于接收回传信息) 如下是V绿岛的OAuth2用户认证的URL http://sycuapp.cn/smilecampus_v3/api/index.php/Oauth2/authorize?client_id=[APP_Key]&redirect_uri=[Redirect_URI]&response_type=code,Redirect_URI是指应用回调URL,该URL是在创建应用的时候指定,也可以在创建之后进行修改,该URL的顶级域名应该与创建应用时的URL相同。以上几个参数必须指定,否则用户认证窗口会有提示错误信息,后续的鉴权流程就不能够继续往下走。

当然,您的应用入口也可以直接重定向到开放平台OAuth2用户认证地址。

下图是用户认证窗口

如果用户已经登录了开放平台,那么用户的会话会存储在用户浏览器端,则会跳过此步骤,直接进入应用授权的流程。

应用授权

用户身份验证通过之后,V绿岛开放平台会引导其进入应用授权的过程

在用户授权通过之后,开放平台会跳转到上一步转递的跳转URL,并传递code值,如果上一步没有传递跳转URL,则平台会跳转到应用的顶级域名,如下是OAuth跳转的URL http:// [Redirect_URI]?code=[Code] 通过这个code以及应用的AppSecret您就可以通过下面一部得到访问令牌

获取应用访问令牌

最后一步是通过上步的code值和应用的令牌信息请求平台OAuth2服务来获取访问令牌,通过访问令牌您就可以调用开放平台API了 如下是获取访问令牌URL http://sycuapp.cn/smilecampus_v3/api/index.php/Oauth2/access_token?client_id=[APP_Key]&client_secret=[APP_Secret]&grant_type=authorization_code&code=[Code]&redirect_uri=[Redirect_URI]

经过以上用户授权和应用授权流程之后,您就可以拿到访问令牌了,系统会输出如下格式的JSON

{
"access_token": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx",
"expires_in": 3600,
"token_type": "Bearer",
"scope": null,
"refresh_token": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx"
}
                        
Step3:访问开放平台 API

在得到访问令牌之后,您就可以根据开放平台的提供的开发文档API目录列表,来读写用户数据了。在访问API地址的时候,除了API文档中描述的参数外,另外还需要传递上一步获得的access_token参数