| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101 |
- <!DOCTYPE html>
- <html lang="en">
- <head>
- <meta charset="UTF-8">
- <meta http-equiv="X-UA-Compatible" content="IE=edge">
- <meta name="viewport" content="width=device-width, initial-scale=1.0">
- <!-- <meta > 生产上有https访问的,会导致上报的referer为空,移动运营商会去校验请求referer是否进行备案-->
- <!-- step2: 添加meta -->
- <meta content="always" name="referrer">
- <title>H5 一键登录demo</title>
- <style>
- body {
- display: flex;
- align-items: center;
- justify-content: center;
- flex-direction: column;
- height: 300px;
- }
- p {
- font-size: 14px;
- }
- </style>
-
- <!-- 手机查看日志 -->
- <!-- <script src="https://cdn.bootcss.com/vConsole/3.3.0/vconsole.min.js"></script>
- <script>
- var vConsole = new VConsole();
- </script> -->
- <!-- 本机验证本身不需要jquery 库,此处使用仅为了在demo中减少代码量 -->
- <script src="https://apps.bdimg.com/libs/jquery/1.9.1/jquery.js"></script>
- <!-- stpe1: 引入JS -->
- <!-- 引入axios 网络请求依赖此库-->
- <!-- <script src="https://unpkg.com/axios/dist/axios.min.js"></script> -->
- <!-- 本地依赖 -->
- <script src="axios.min.js"></script>
- <!-- 引入gysdk-min.js 注意路径-->
- <script src="gysdk-min.js"></script>
- </head>
- <body>
- <h3>H5 一键登录 demo 演示</h3>
- <p>点击登录体验 H5 一键登录</p>
- <button id='test'>登录</button>
- <p>此处为点击登录模拟场景, 接入方可根据业务需求,进行修改</p>
- </body>
- </html>
- <script>
- const appid = "W7kPXNCmix71vGXznHuBy5"
- //初始化个验SDK
- function initGy() {
- GyManager.setDebugMode(true)
- GyManager.init({
- app: "芳华未来",
- appid: appid, timeout: 3000, onResult: function (res) {
- console.log("demo init ", res);
- if (res.success) {
- initResult = res;
- }
- }
- });
- }
- //保存初始化结果
- let initResult;
- // 可提前判断网络状态 决定是否初始化H5一键登录
- var nettype = GyManager.checkNetInfo();
- console.log("demo checkNetInfo", nettype);
- // 根据客户业务进行判断 网络判断返回 cellular、 wifi、 unknown
- if (nettype === 'wifi') {
- // 可选方案:
- // 1: 提示用户关闭wifi 进行体验
- // 2: 直接降级走其他验证形式
- console.error("demo wifi状态无法一键登录")
- } else {
- // stpe3: 初始化H5一键登录
- initGy()
- }
- // 模拟点击登录场景 可以在页面加载的时候判断网络状态后初始化就调用gateway方法
- $('#test').click(() => {
- // 调用H5一键登录
- if (!initResult) {
- console.error("demo gysdk初始化失败,无法登录")
- // 降级走其他验证方式
- return
- }
- //step5: 调用H5 一键登录
- GyManager.oneLogin({
- canSwithch: true,
- logo:"./logo.png",
- onTokenSuccess: function (res) {
- console.log("demo onTokenSuccess", res);
- //调用服务端校验接口
- },
- onTokenFail: function (err) {
- console.error("demo onTokenFail", err);
- }
- });
- });
- </script>
|