敬告:此 demo 演示为开放测试页面,仅用于开发者快速测试体验应用功能,请严格遵守开发者协议,九游会国际-九游会真人第一品牌。
♦ js-sdk 引用方式:
♦ 普通网页 script 方式加载:下载最新版 ,请在页面上调用 jsbridge 接口之前引用 jsbridge-mini.js 库;
♦ js module 方式引用:npm install ym-jsbridge
♦ 1. 苹果 id 授权登录;
♦ 2. 接入步骤:
♦ 2.1 苹果证书标识符(identifier)需勾选 “sign in with apple” 功能(),上传证书并生成苹果版安装包;
♦ 2.2 调用 checksuport 接口检查当前设备是否支持苹果授权登录,如果支持则进入下一步;
♦ 2.3 调用 request 发起苹果 id 授权登录,将回调的 data 提交到您的服务器 、 授权信息;
//高于或等于 ios 13 才支持苹果 id 授权登录 jsbridge.sia.checksupport(function(succ, data) { alert(succ ? "支持" : "不支持"); });
//发起授权登录,回调返回 data 是 json 数据 //请提交到您的服务器 授权信息 jsbridge.sia.request(function(succ, data) { if (succ) { var str = json.stringify(data); alert("授权成功:\n" str); jsbridge.setclipboardtext(str); alert("已复制到剪贴板"); } else { alert("取消了授权登录或不支持"); } }); //授权成功时回调函数返回的 data 示例数据 var exampledata = { //jwt token 请在服务器端验证此 token 是否有效 //验证通过后使用此 token 的 claims.sub 作为用户唯一标识 "identitytoken": "eyjrawqioijlwgf1bm1miiwiywxnijoiulmyntyifq.eyjpc3mioijodhrwczovl2fwcgxlawquyxbwbguuy29tiiwiyxvkijoiy29tlnvwaw4xntguyxbwlng4iiwizxhwijoxnji4mzi1mzc4lcjpyxqioje2mjgymzg5nzgsinn1yii6ijawmtiwni43mja3ndi2ywm5mja0mzcyogezytzizda3nzkwytdlny4wnzq1iiwiy19oyxnoijoiemxmmxhhnwjss0dqmeszrvrvzfvudyisimvtywlsijoizdiymjhtngo5bkbwcml2yxrlcmvsyxkuyxbwbgvpzc5jb20ilcjlbwfpbf92zxjpzmllzci6inrydwuilcjpc19wcml2yxrlx2vtywlsijoidhj1zsisimf1dghfdgltzsi6mtyyodizodk3ocwibm9uy2vfc3vwcg9ydgvkijp0cnvlfq.ixbtj7rg4dbuypnetekc25mkwif1p6usfnyu2bbyqqfv9dq0vkvz_gbolm2pjr19sszp_y6osigng3o5e1hkk3rjyvy4aeomgdd4v6ndkuu0qdetc0bpvyk_k2vsxpi80gd40h6dscgsbqi9g8ijj7b_yccupjxus54hr5quycduv8fwz_nijiyn8j5p0cardnbacvqoenuw8gvn2icwb3h6iup9hda89yndcwu93xhxecdkszu043pjhpkuh4e_f5eltelfogzirkxcbwps5yw4zd_ad7by_n5u-y2tleedkztypu6nbkvfxn9vyazevm0qmxkmbh9j3-mzpo9log", "realuserstatus": "unknown", //授权码 "authorizationcode": "c558352f4c2b64a45afea4b612c6d9827.0.srsqw.zg8w9uusg2jz8q4_x-2tvg", //用户姓名数据(注意只有第一次登录时才有,以后都会返回空数据) "fullname": { //家族姓氏 "familyname": "张", //前缀 "nameprefix": "", //名字 "givenname": "三", //后缀 "namesuffix": "", //中名 "middlename": "", //昵称 "nickname": "永远的神" }, //电子邮箱 "email": "aaa@bbb.com", //状态 "state": "", //用户唯一标识(与解码 jwt 格式 identitytoken 出来的 claims.sub 字段相同) "user": "001206.7207426ac92043728a3a6bd07790a7e7.0745" }; /* 解码 jwt 格式 identitytoken 的示例 可使用此地址在线解码 http://jwt.calebb.net/ === header { kid: "exaunml", //签名算法 alg: "rs256" }. === claims { iss: "https://appleid.apple.com", aud: "com.upin158.app.x8", exp: 1628325378, iat: 1628238978, //用户唯一标识 sub: "001206.7207426ac92043728a3a6bd07790a7e7.0745", c_hash: "zll1xg5blkgp0k3etudunw", email: "d2228m4j9n@privaterelay.appleid.com", email_verified: "true", is_private_email: "true", auth_time: 1628238978, nonce_supported: true }. === 签名数据 [signature] */