`orientation`: 屏幕方向的状态,即 window.orientation 的取值
共享地址簿组件【需申请白名单】
共享地址簿组件用于接入方获得当前微博用户在微博的收货地址。目前处于内部体验阶段,不向所有接入方开放。
第一步、使用共享地址簿组件,需要申请,请将 appkey 发送给 wanglei25@staff.weibo.com 申请该组件的使用权限。
第二步、代码开发。共享地址簿组件提供了两个 Action 供调用:
PC 版调用方法:(也可以
点击这里
)
1、获取默认收货地址
App.trigger('deliverAddress:default', function(addr){ /* 回调函数 */ });
2、选择其他的收货地址(可以增加、删除、修改地址)
App.trigger('deliverAddress:change', function(addr){ /* 回调函数 */ });
完整 Web 版调用范例:
<!DOCTYPE html>
<meta charset="utf-8" />
<title>共享地址簿组件 Web 版</title>
</head>
<div id="address">收货地址读取中……</div>
<script src="http://tjs.sjs.sinajs.cn/open/thirdpart/js/frame/appclient.js" charset="utf-8"></script>
<script>
function $(o){
return document.getElementById(o);
// 显示地址组件返回的地址
function showAddress(addr){
var address = $("address");
if(addr == null){
address.innerHTML = "没有默认收货地址";
} else {
address.innerHTML = addr.name + " " + addr.mobile + " " + addr.address;
// 获取当前登录用户的默认收货地址
App.trigger('deliverAddress:default', showAddress);
// 给地址区域绑定点击事件,点击该区域,唤起地址组件选择界面
$('address').onclick = function(){
App.trigger('deliverAddress:change', showAddress);
</script>
</body>
</html>
H5 版调用方法:
1、获取默认收货地址
WeiboJS.invoke("deliverAddress:default", {}, function(addr){ /* 回调函数 */ });
2、选择其他的收货地址(可以增加、删除、修改地址)
WeiboJS.invoke("deliverAddress:change", {}, function(addr){ /* 回调函数 */ });
完整 H5 版调用范例:
<!DOCTYPE html>
<meta charset="utf-8" />
<title>共享地址簿组件 H5 版</title>
</head>
<div id="address">收货地址读取中……</div>
<script src="http://tjs.sjs.sinajs.cn/open/thirdpart/js/pageapp/mobile/jsapi.js" charset="utf-8"></script>
<script>
function $(o){
return document.getElementById(o);
// 显示地址组件返回的地址
function showAddress(addr){
var address = $("address");
if(addr == null){
address.innerHTML = "没有默认收货地址";
} else {
address.innerHTML = addr.name + " " + addr.mobile + " " + addr.address;
// 获取当前登录用户的默认收货地址
WeiboJS.invoke("deliverAddress:default", {}, showAddress);
// 给地址区域绑定点击事件,点击该区域,唤起地址组件选择界面
$('address').onclick = function(){
WeiboJS.invoke("deliverAddress:change", {}, showAddress);
</script>
</body>
</html>
轻应用 H5 组件Demo
请使用微博客户端扫描下方二维码查看演示Demo:
微博支付应用接入指南:
http://open.weibo.com/wiki/微博支付应用接入指南
微博API接口文档:
http://open.weibo.com/wiki/%E5%BE%AE%E5%8D%9AAPI
附录1、签名方法
注意:为保证 appsecret 与 ticket 安全性,以下步骤需要在服务器端完成
调用开放平台接口,传入 appkey 与 appsecret 生成 ticket:
POST https://api.weibo.com/oauth2/js_ticket/generate?client_id=APPKEY&client_secret=APPSECRET
"result":true,
"appkey":"",
"js_ticket":"", // 获取到的 ticket
"expire_time":7199 // ticket 的有效时间(秒)
有效期内再次调用该接口会导致 ticket 刷新,旧的直接失效。 所以第三方应该在服务器缓存 ticket,将要过期时才再次请求改接口
生成签名字符串:
签名字符串 = "jsapi_ticket=[TICKET]&noncestr=[NONCESTR]×tamp=[TIMESTAMP]&url=[URL]"
注:URL参数请根据当前webview加载的实际地址实时更新
[TICKET]: 上一步获取的 ticket
[NONCESTR]: 随机字符串,需要和 config 时的值一致
[TIMESTAMP]: 当前UNIX时间戳,需要和 config 时的值一致
[URL]: 当前页面的完整 URL (不进行 url encode,不包含 # 及 fragment)
使用 sha1 算法生成签名
签名 = sha1(签名字符串)
附录2、菜单编码
微博:1001
好友圈:1002
私信 :1003
微信好友:1004
朋友圈:1005
微米好友:1006
微米圈:1007
来往好友:1008
来往动态:1009
QQ:1010
Qzone:1011
短信:1101
邮件:1102
系统浏览器:2001
复制链接:2002
字号设置:2003
来自“http://open.weibo.com/wiki/index.php?title=%E8%BD%BB%E5%BA%94%E7%94%A8H5%E6%96%B0%E7%89%88JS&oldid=15963”