Selaa lähdekoodia

'完善接口'

ith5cn 1 kuukausi sitten
vanhempi
commit
23dfbba2d6
2 muutettua tiedostoa jossa 33 lisäystä ja 10 poistoa
  1. 10 0
      index.html
  2. 23 10
      public/native-sdk.js

+ 10 - 0
index.html

@@ -5,6 +5,16 @@
     <link rel="icon" type="image/svg+xml" href="/vite.svg" />
     <meta name="viewport" content="width=device-width, initial-scale=1.0" />
     <title>h5sdk</title>
+    <script>
+      (function() {
+        const params = new URLSearchParams(window.location.search);
+        if (params.get('is_native') === 'true') {
+          const script = document.createElement('script');
+          script.src = '/native-sdk.js';
+          document.head.appendChild(script);
+        }
+      })();
+    </script>
   </head>
   <body>
     <div id="root"></div>

+ 23 - 10
public/native-sdk.js

@@ -2,7 +2,7 @@
   /**
    * 发送消息给 iframe
    */
-const sendToIframe = (type, data, requestId) {
+const sendToIframe = function (type, data, requestId) {
 if (!this.iframeWindow) {
     console.warn('[Parent] Cannot send message: iframe not initialized');
     return;
@@ -13,6 +13,22 @@ console.log('[Parent] Sending message to iframe:', message);
 this.iframeWindow.postMessage(JSON.stringify(message), this.origin);
 }
 
+/**
+ * 转换login信息
+ */
+const translateLoginData = function(info){
+
+    return {
+        uid: info.uid,
+        is_first_login: info.is_first_login,
+        is_real_name: info.is_real_name,
+        login_time: info.login_time,
+        reg_time: info.reg_time,
+        user_name: info.user_name,
+    }
+
+}
+
 
 var INDEX = {
   init: 0, // 初始化
@@ -24,29 +40,26 @@ var INDEX = {
 }
 
 
-window.jsBridge({callback:1, param:参数, token:'我给你的原样给我'})
-
-
 window.jsBridge = function (data){
     const {callback, param, token} = data
     switch(callback){
         case INDEX.init:
-            sendToIframe('INIT_REQUEST', param, token)
+            sendToIframe('INIT_REQUEST', {success:true, message:"初始化成功"}, token)
             break;
         case INDEX.login:
-            sendToIframe('LOGIN_REQUEST', param, token)
+            sendToIframe('LOGIN_REQUEST',{success:true, message:"登录成功", data:translateLoginData(param)}, token)
             break;
         case INDEX.logout:
-            sendToIframe('LOGOUT_REQUEST', param, token)
+            sendToIframe('LOGOUT_REQUEST', {success:true, message:"登出成功"}, token)
             break;
         case INDEX.pay:
-            sendToIframe('PAY_REQUEST', param, token)
+            sendToIframe('PAY_REQUEST', {success:true, message:"支付页面打开成功"}, token)
             break;
         case INDEX.report:
-            sendToIframe('REPORT_REQUEST', param, token)
+            sendToIframe('REPORT_REQUEST', {success:true, message:"角色上报成功"}, token)
             break;
         case INDEX.onLogout:
-            sendToIframe('ONLOGOUT_REQUEST', param, token)
+            sendToIframe('ONLOGOUT_REQUEST', {success:true, message:"SDK内退出账号成功"}, token)
             break;
     }
 }