目录
1 易班开放平台注册
2 互联网开放平台
3 易班开放平台
3.1 易班开放平台的入口
3.2 开发者加入易班开放平台
3.3 如何成为开放者
3.4 如何创建应用
3.5 如何把应用融入易班
3.6 如何上架应用
3.7 如何维护更新上架应用
3.8 应用权限
3.9 易班授权概述
3.10 授权有效期
3.11 易班API
4 易班开放平台创建应用
4.1 站内应用介绍
4.2 网站接入介绍
4.3 移动应用介绍
4.4 轻应用介绍
4.5 如何创建应用
4.6 技术开发
4.7 轻应用授权设计流程
5 实战-利用开放平台SDK实现官方demo
6 利用开放平台SDK实现官方demo
6.1 在开放平台创建轻应用,用于测试
6.2 SDK的目录结构
6.2.1 文档目录结构
6.2.2 demo目录
6.3 测试demo
1 易班开放平台注册
1、登录PC端易班网页
2、点击应用广场
3、点击开发者,进入一个页面,然后注册即可使用
2 互联网开放平台
在互联网时代,把网站的服务封装成一系列计算机易识别的数据接口开放出去,供第三方开发者使用,这种行为就叫做Open API,提供开放API的平台本身就被称为开放平台。通过开放平台,网站不仅能提供对Web网页的简单访问,还可以进行复杂的数据交互,将它们的Web网站转换为与操作系统等价的开发平台。第三方开发者可以基于这些已经存在的、公开的Web网站而开发丰富多彩的应用。
3 易班开放平台
易班开放平台是指由易班网(,下面简称易班)所享有并运营的软件和提供的服务, 开发者可通过这些软件和服务开发易班插件及应用组件。
易班开放平台目前开放了轻应用、网站接入和移动APP等类型的接入。易班开放平台可以为您提供易班的账户体系、关系体系、分享体系等相关接口, 更多内容查看易班API。
您可以通过简单的代码整合,在您的网站上放置易班登录按钮,您的网站用户就能够使用易班账号进行登录。 您也可以将应用接入易班轻应用,用户可以在易班客户端、应用广场直接访问您的应用。
3.1 易班开放平台的入口
/
3.2 开发者加入易班开放平台
1、 可融入易班大学生用户的社交圈
2、 使用最低的成本接入开放平台
3、 可获取易班的技术支持
3.3 如何成为开放者
1、易班账号登录开放平台,点击右上角用户头像,选择个人中心。
2、填写开发者信息。
个人开发者,适用于个人开发或个人带领的开发团队。
3、提交审核,易班工作人员将在2~3个工作日完成审核,并以消息盒子通知。
3.4 如何创建应用
1、适用于PC浏览器内嵌至易班iframe内加载,详见站内应用介绍
2、使用于易班app内置浏览器内加载,可兼容于PC/手机浏览器,详见轻应用介绍
3、独立的web网站,详见网站接入介绍
4、独立的app客户端,详见移动应用介绍
3.5 如何把应用融入易班
易班开放平台采用oauth2.0验证应用与易班用户身份。授权后,本次访问的易班用户可通过应用调用易班api进行互动。
3.6 如何上架应用
1、创建应用,填写应用信息、开发信息。获得开放平台分配的应用AppID、AppSecret。 请妥善保管AppSecret,如发现被盗用,请及时联系易班客服重置,以免影响应用的正常运营。
2、开发者编写、测试应用端代码。
3、应用开发完成,点击管理中心该应用的提交审核操作项。提交审核前请确保已完成任何应用信息或应用程序的更改,避免审核不通过。
4、提交审核,易班工作人员将在2~3个工作日完成审核,并以消息盒子通知。
3.7 如何维护更新上架应用
【1】、需要更改上架应用信息、开发信息时:
1、在管理中心中修改应用信息。修改后自动提交上架应用信息的审核申请,此时应用信息并未真正被修改。
2、易班工作人员将在2~3个工作日完成审核,并以消息盒子通知。如通过审核应用信息正式被修改。
【2】、需要更改上架应用代码时:
1、在管理中心中将应用更改为维护状态。
2、更改、测试应用代码。
3、确认完成应用端代码迭代后,将应用更改为运营状态。
3.8 应用权限
1、测试权限:
适用于开发阶段的应用或网站,拥有调用基础接口的权限。频次上限单用户、单ip每应用1000/小时。
2、常规权限:
适用于运营阶段的应用或网站,拥有调用基础接口的权限。频次上限单用户、单ip每应用10000/小时,接口调用超频可申请提高。
3、高级权限:
适用于需要更多资源的应用或网站,拥有调用基础接口、进阶接口的权限。频次上限单用户、单ip每应用10000/小时,。
4、校级权限:
适用于院校授权开发运营的应用或网站,拥有调用基础接口、进阶功能接口、易班校级接口、用户实名接口的权限。 用户实名接口仅提供申请院校所属的用户实名信息。频次上限单用户、单ip每应用10000/小时。
3.9 易班授权概述
易班api的访问大多都需要验证用户身份,而oauth2.0是目前最主要的用户身份验证和授权方式。关于易班授权流程如图所示。
程序一定要具备足够的健壮性,调用接口时判断接口的返回值,如果用户的access_token失效,需要引导用户重新授权。access_token失效原因有以下几个:
1、用户取消了对应用的授权。
2、access_token自然过期。
3、用户第一次访问。
3.10 授权有效期
3.11 易班API
1、所谓的开放API(OpenAPI)是服务型网站常见的一种应用,网站的服务商将自己的网站服务封装成一系列API(Application Programming Interface,应用编程接口)开放出去,供第三方开发者使用,这种行为就叫做开放网站的API,所开放的API就被称作OpenAPI(开放API)。
网站提供开放平台的API后,可以吸引一些第三方的开发人员在该平台上开发商业应用,平台提供商可以获得更多的流量与市场份额,第三方开发者不需要庞大的硬件与技术投资就可以轻松快捷的创业,从而达到双赢的目的,开放API是大平台发展、共享的途径,让开发者开发一个有价值应用,付出的成本更少,成功的机会更多。
2、易班API介绍可以上易班开放平台看相关文档。
4 易班开放平台创建应用
4.1 站内应用介绍
站内应用是通过站内应用框架服务将您的应用接入进易班,让用户在易班网站内使用应用。更好的提升用户使用体验、 更多的应用推广机会、更简单的易班授权流程。
使用场景:PC浏览器,在易班web版应用广场推广
效果如下图:
4.2 网站接入介绍
网站接入是易班针对第三方网站提供的社会化网络接入方案。接入易班授权让您的网站支持用易班帐号登录,让用户方便的分享网站内容、在网站上关注您的易班动态,快速为网站增加用户、流量和推广度。
使用场景:PC浏览器,在易班web版应用广场推广(可兼容手机浏览器,开发者自行推广)
4.3 移动应用介绍
移动应用是易班针对第三方移动客户端提供的交互模式。使用易班授权让您的客户端支持用易班帐号登录,让用户方便的同步第三方客户端内容、并关注您的易班动态。
使用场景:独立app客户端,在易班web版应用广场提供下载
如图:开发出来后,在易班平台上下载使用
4.4 轻应用介绍
轻应用是以第三方服务接入易班提供的一套基础框架和接入服务,接入方以网页应用的形式开发。根据展示场景、方式不同,轻应用分为三种。
1、易班客户端内通过 Webview 展示,在易班app应用广场推广(H5页面)。
2、同时兼容易班客户端Webview、PC/手机浏览器展示,在易班双端应用广场推广(终端自适应UI)。
3、轻应用快搭,一种由易班提供各种模板套件组装的轻应用搭建方式。
4、创建轻应用流程图:
4.5 如何创建应用
移动应用的创建、修改、发布上架等如下图流程所示,开发者可以根据应用当前的状态进行相应的操作。
4.6 技术开发
应用信息保存成功后,将会获得该应用的AppID和AppSecret,您可以通过这两个备案凭证开始进行相关的技术开发工作。 AppID是应用的唯一标识,开放平台通过AppID来鉴别应用的身份。AppSecret是给应用分配的密钥,开发者需要妥善保存这个密钥,这个密钥用来保证应用来源的的可靠性,防止被伪造。
应用服务器需由开发者自行解决,易班开放平台不提供服务器资源。
4.7 轻应用授权设计流程
5 实战-利用开放平台SDK实现官方demo
1、打开易班开放平台,打开文档中心,点开授权机制
2、下载相应的SDK,这里下载php SDK
3、解压
4、解压轻应用SDK,这里讲轻应用SDK,其他压缩包可直接删除
5、解压后的文件目录结构
6利用开放平台SDK实现官方demo
6.1 在开放平台创建轻应用,用于测试
6.2 SDK的目录结构
6.2.1 文档目录结构
-- /
|
|-- classes/ 开放平台SDK(轻应用)
|-- demo/ 测试实例
|-- config.php 配置文件,您需要修改这个文件写入对应的 AppID 等信息
|-- index.php DEMO入口
|-- iapp.php 轻应用授权流程(使用DEMO时请将管理中心->应用详细中应用地址指向此文件所在的URL)
|-- apitest.php 功能接口测试(需要完成授权流程获取到access_token才能进行接口测试)
|-- revoke.php 撤销授权功能调用测试
|-- README.txt 本文档
6.2.2 demo目录
测试实例,我们可以通过demo来理解易班开放平台是怎么让用户通过易班账号第三方登录你的轻应用的
1、index.php:入口文件
<?php require 'config.php';//引入demo目录中的config.php文件$appUrl = isset($config['CallBack'])?$config['CallBack']:'javaScript:;';/*URL判断 看config.php是否设置了回调地址CallBack,如果有,将回调地址赋予$appUrl,否则赋予空*/?><!DOCTYPE html><html lang="zh-cn"><head><meta charset="UTF-8"><title>易班开放平台DEMO</title><style>* { line-height: 32px; } </style></head><body><div><p style="font-weight: bold;">轻应用SDK使用DEMO</p><p style="font-weight: bold;">1、<a href="/manage/index" target="_blank">开放平台管理中心</a>左侧导航栏中选择"轻应用"中的应用(若无应用则创建新应用)</p><p style="font-weight: bold;">2、设置应用中的“使用场景"选项为"兼容易班客户端、PC/手机浏览器",以便在浏览器中运行DEMO</p><p style="font-weight: bold;">3、设置应用中的"应用地址"为此DEMO中iapp.php所在的URL</p><p style="font-weight: bold;">4、修改此DEMO中config.php文件,填写应用信息(Appid和AppSecret),CallBack填轻应用的授权回调地址</p><p style="font-weight: bold;">以上步骤操作完成后点击下方链接测试DEMO</p></div><div><a href="<?=$appUrl?>">轻应用DEMO</a> <--点击,跳转到回调地址,处理授权--></div></body></html>
2、config.php:配置文件,您需要修改这个文件写入对应的 AppID 等信息
<?php/*** 配置文件(轻应用)*/$config = array('AppID'=> '',//此处填写你的appid'AppSecret' => '',//此处填写你的AppSecret'CallBack' => '',//此处填写你的授权回调地址);
3、iapp.php:轻应用授权流程
<?php/*** 轻应用授权* *//*** 包含SDK*/require("../classes/yb-globals.inc.php");//配置文件require_once 'config.php';//初始化$api = YBOpenApi::getInstance()->init($config['AppID'], $config['AppSecret'], $config['CallBack']);$iapp = $api->getIApp();try {//轻应用获取access_token,未授权则跳转至授权页面$info = $iapp->perform();} catch (YBException $ex) {echo $ex->getMessage();}$token = $info['visit_oauth']['access_token'];//轻应用获取的token?><html><body><p><?php if (isset($token)&&$token){?>授权成功,点击下方链接查看通用接口测试<?php }?></p><a href="apitest.php?token=<?=$token?>">点击查看通用接口调用测试页面</a><--将获得的token传递到apitest.php页面,以供使用--></body></html>
4、apitest.php:功能接口测试(需要完成授权流程获取到access_token才能进行接口测试
以下代码有删改<?php$token = isset($token) ? $token : $_GET['token'];/*** 包含SDK*/require("classes/yb-globals.inc.php");// 配置文件require_once 'config.php';//初始化配置信息,并获取token$api = YBOpenApi::getInstance()->init($config['AppID'], $config['AppSecret'], $config['CallBack']);$api->bind($token);?><html><body><table style="width: 960px;margin-top:10px;margin-bottom:10px;" border="1"><tr><td style="width: 15%;">API介绍</td><td style="width: 30%;">调用方法</td><td style="width: 50%;">返回结果</td><td style="width: 5%;">接口说明</td></tr><tr><td colspan=4>用户接口</td></tr><tr><td>获取当前用户基本信息</td><td>$api->request('user/me');</td><td><?php var_dump($api->request('user/me'));?></td><td><a href="/wiki/index.php?page=user/me" target="_blank">查看</a></td></tr><tr><td colspan=4>授权接口</td></tr><tr><td>开发者主动取消指定用户的授权</td><td>$api->request('oauth/revoke_token', array('client_id'=>$api->getConfig('appid')), true);</td><td><a href="revoke.php?token=<?=$token?>">点击撤销用户授权</a></td><td><a href="/wiki/index.php?page=oauth/revoke_token" target="_blank">查看</a></td></tr><tr><td>查询用户access_token的相关授权信息</td><td>$api->request('oauth/token_info', array('client_id'=>$api->getConfig('appid')), true);</td><td><?php var_dump($api->request('oauth/token_info', array('client_id'=>$api->getConfig('appid')), true));?></td><td><a href="/wiki/index.php?page=oauth/token_info" target="_blank">查看</a></td></tr></table><a href="index.php">返回首页</a></body></html>
5、revoke.php:撤销授权功能调用测试
<?php//回收授权操作$token = isset($token) ? $token : $_GET['token'];/*** 包含SDK*/require("../classes/yb-globals.inc.php");// 配置文件require_once 'config.php';$api = YBOpenApi::getInstance()->init($config['AppID'], $config['AppSecret'], $config['CallBack']);$api->bind($token);?><p>调用取消用户授权后的返回结果</p><p><?php $res = $api->request('oauth/revoke_token', array('client_id'=>$api->getConfig('appid')), true);var_dump($res);?></p><p><?php if ($res['status']==200) {?>撤销授权成功,下次访问DEMO时会重新要求用户授权<?php }?></p><a href="index.php">返回DEMO首页</a>
6.3 测试demo
1、将解压的整个目录放在wamp软件的Apache的www目录下,如果改了默认目录,放在改后的目录下
2、修改demo目录中的config.php文件
$config = array(
'AppID' => '', //此处填写你的appid
'AppSecret' => '', //此处填写你的AppSecret
'CallBack' => '', //此处填写你的授权回调地址
);
3、将开放平台的应用中的“使用场景"选项为"兼容易班客户端、PC/手机浏览器",以便在浏览器中运行DEMO
4、设置应用中的"应用地址"为此DEMO中iapp.php所在的URL
http://localhost/YBAPI-SDK/demo/iapp.php
5、完成修改后,即可在浏览器输入
http://localhost/YBAPI-SDK/demo
进入此页面:
点击轻应用DEMO,进行用户授权:
授权完成:
点击查看通用接口调用测试页面,即可看到调用接口后显示与用户相关的信息:
点击撤销用户授权,即可撤销用户相关授权
到这里,一个简单的开放平台demo实现就完成了,你可以利用这些开放平台提供给你的接口开发自己的轻应用了,这里的第三方授权登录类似于一些网站让你用QQ或微信账号第三方登录。