微博应用框架开发文档
来源:互联网 发布:淘宝旺旺链接 编辑:程序博客网 时间:2024/06/07 11:25
原地址:http://beginios.com/javascript/weibo-app-frame#client
此文档只针对新接入的第三方应用,原有的站内应用、企业应用(专业版应用)、Page应用,需要第三方进行代码升级并在平台网站升级后才能使用。
为了规范第三方应用接入,提供一致性的开发接入模式,2014年微博对原有的三种应用框架体系进行整合,形成一套新的框架体系。
文档目录
- 新版应用框架特性
- 创建应用
- 应用框架流程
- 应用框架 POST 参数
- Web版应用客户端 JS 包使用说明
- FAQ
- 联系我们
名词解释
应用接入方:开发应用的第三方团队或个人。
应用框架:微博向应用接入方提供的整套解决方案。
应用 iframe 外框:微博开放平台提供的应用承载的页面,内部通过 iframe 嵌入接入方的页面。
新版应用框架特性
- 无需授权。如果用户在登录状态访问应用,新的框架将默认完成授权,并将 access_token 信息传递给第三方。
- 统一接入方式和参数。无论是哪种类型的应用,无论是 Web 版还是客户端嵌入的 H5 版本,客户端收到的参数都是相同的,接入方式也基本上都相同。应用内可以通过浏览器 userAgent 来区分是 Web 端还是 H5 状态。
- 新增应用分享和赞。直接将应用分享到微博,并生成卡片展示,快速传播。
- 应用支持未登录访问。未登录微博也可以浏览应用,必要的时候通过我们的 JS 客户端唤起登录浮层。
- 应用宽度调整为 940px。不支持原来的 760px,原来的 950 px 改为 940px。
新应用框架范例展示
企业应用
应用名:北京汽车网上4S店
预览图:Web版、H5版
站内应用
应用名:三格半
预览图:Web版
Page应用
应用名:
预览图:Web版、H5版
创建应用
(略,参考开放平台网站文档)
应用框架实现方式及页面流程
实现方式
应用框架采用 iframe 嵌套,通过 POST 形式将参数传递给应用接入方提供的应用地址
页面流程
- 应用外框架获取当前登录用户信息,自动完成应用授权,并将 access_token 等信息加密
- 应用外框架解析当前访问的 URL,并解析为对应的第三方页面 URL,将加密的 access_token 等信息通过 POST 传递给第三方
- 第三方使用微博提供的 SDK (如 PHPSDK 等),将加密的信息解密
- 如果接入方需要iframe 高度自适应等功能,请引入我们提供的 JS 包
应用内支持两类形式的超链接:
1)在当前窗口跳转,地址栏不变
2) 在当前窗口打开,刷新整个框架,地址栏改变
直接跳转至指定页面:
假设您的站内应用地址是:apps.weibo.com/liwu,iframe中应用实际地址是:www.liwu.com。 当浏览器地址栏是apps.weibo.com/liwu/demo/a1.php时,iframe中的页面会定位至www.liwu.com/demo/a1.php
应用框架 POST 参数
应用框架会通过 POST 形式,发送给第三方页面一个加密后的参数 signed_request,这个参数可以使用 PHPSDK 之类进行解密。
未登录状态访问应用参数
登录状态访问应用,自动授权成功参数
Web版应用客户端 JS 包使用说明
引入JS文件
引入了这个 JS 到需要自适应高度的页面,你的应用就能自动适应高度了。
友情提示:为了对页面性能产生最小的影响,建议此文件放在 </body> 之前
API方法
1、触发行为
- <cmd> 必选参数,指定行为的名称
- <param> 可选参数,指定调用行为的参数
- <function> 可选参数,指定行为的异步回调函数
<cmd> 列表如下:
2、事件监听 (on/off)
App.on('<event>;', '<function>');App.off('<event>', '<function>');
- <event>为必选参数,指定要监听的事件称
- <function>为可选参数,指定事件的异步回调函数
<event> 列表如下:
FAQ
1、我的应用不升级,还能继续使用吗?
答:不主动升级的应用,将维持原版,不受任何影响。
2、我如何区分是Web版还是H5版?
答:第三方应用中,PHP 可以根据页面的 userAgent 来判断是不是移动设备,从而决定输出 H5 的内容还是 Web 版的内容。
3、我的应用地址是http://apps.weibo.com/1785311805/8rYu1uHD ,应用框架嵌入的是我的应用首页,能直接访问到某个具体的页面吗,例如:http://apps.weibo.com/1785311805/8rYu1uHD/test.php?param1=abc ?
答:可以,目前框架支持带全 URL。
4、我的应用为何没有自适应高度?
答:请检查两个地方:open.weibo.com 的应用管理中心,是否将应用高度自适应勾选了;是否部署了客户端 JS。如果都设置了还没有自适应高度,请寻找页面底部的联系方式。
5、我的页面大于 5000px,被框架挡住了,怎么办?
答:考虑到绝大多数应用不会有超过 5000px,所以我们做了限制,自适应不能超过这个限制。如果你一定要突破这个限制,请调用:App.trigger(‘setPageHeight ’, ‘6000’);
6、为什么我会出现双层导航?
你需要给链接增加属性 target=“_top”
更新日志
2014.04.21
parentInfo 返回值增加窗口的尺寸 parentWin.win.width 和 parentWin.win.height2014.04.11
增加调用登录浮层的方法
联系我们
- 微博应用框架开发文档
- 前端开发框架文档
- Portal-Basic Java Web 应用开发框架(源码、示例及文档)
- Portal-Basic Java Web 应用开发框架 v2.6.1(源码、示例及文档)
- Portal-Basic Java Web 应用开发框架 v2.6.2 发布(源码、示例及文档)
- Portal-Basic Java Web 应用开发框架 v3.0.1 正式发布(源码、示例及文档)
- android 应用开发框架
- WebGIS应用开发框架
- Andbase应用开发框架
- Andbase应用开发框架
- Andbase应用开发框架
- 设计文档: GPS应用开发
- 微信小应用官方开发文档
- 新浪微博开发文档
- Portal-Basic Java Web 应用开发框架(v2.5.4 - 源码、示例及文档可在 Google Code 下载)
- 【双旦献礼】Portal-Basic Java Web 应用开发框架 v3.0.1 正式发布(源码、示例及文档)
- 【双旦献礼】Portal-Basic Java Web 应用开发框架 v3.0.1 正式发布(源码、示例及文档)
- android应用开发框架: KJFrameForAndroid
- Linux新手命令
- 每天学习一点编程(7)(n 个数字(0,1,…,n-1)形成一个圆圈,从数字0 开始,每次从这个圆圈中删除第m 个数字)
- Smart Thread Pool 介绍
- Ubuntu 安装Java开发环境(jdk1.7 + Eclipse)
- 适配iOS7 — UISearchBar
- 微博应用框架开发文档
- entity framework 6 自己编写的通用数据类
- python-requests 必需如下使用才能保持keep-alive
- skiplist
- POJ 3259 Wormholes
- FileWriter类总结
- java int数组转为long数组
- Hibernate学习之事务
- Facebook社交业务进军中国内地,困难重重