Explorar o código

appendScriptSrc

MaxKey hai 5 días
pai
achega
5b15439393

+ 23 - 7
maxkey-web-frontend/maxkey-web-app/src/assets/transform.js

@@ -1,13 +1,28 @@
 /*
  * Copyright [2022] [MaxKey of copyright http://www.maxkey.top]
- * 
+ *
  * Licensed under the Apache License, Version 2.0 (the "License");
  * you may not use this file except in compliance with the License.
  * You may obtain a copy of the License at
- * 
+ *
  *     http://www.apache.org/licenses/LICENSE-2.0
- * /passport/login--->/#/passport/login
- * /passport/callback/---->/#/passport/callback/
+ *
+ */
+
+/**
+ * 动态加载js脚本文件
+ * @param {*} scriptSrc
+ */
+function appendScriptSrc(scriptSrc){
+  var script = document.createElement('script');
+  script.src = scriptSrc; // 加载JS文件路径
+  document.body.appendChild(script);
+}
+
+/**
+ *   /passport/login--->/#/passport/login
+ *   /passport/callback/---->/#/passport/callback/
+ * @param {*} transPath
  */
 function locationTransform(transPath){
     var topHref = top.location.href;
@@ -20,9 +35,10 @@ function locationTransform(transPath){
     }
 }
 var transPaths = [
-    '/passport/login', 
+    '/passport/login',
     '/passport/callback/'
 ];
-for (i = 0; i < transPaths.length; i++) { 
+for (i = 0; i < transPaths.length; i++) {
     locationTransform(transPaths[i]);
-}
+}
+

+ 9 - 8
maxkey-web-frontend/maxkey-web-app/src/index.html

@@ -144,16 +144,18 @@
 </body>
 <!--attention http or https-->
 <!--企业微信-->
-<script src="https://wwcdn.weixin.qq.com/node/wework/wwopen/js/wwLogin-1.2.7.js"></script>
-
+<script type="text/javascript">
+  appendScriptSrc(location.protocol+"//wwcdn.weixin.qq.com/node/wework/wwopen/js/wwLogin-1.2.7.js");
+</script>
 <!--钉钉-->
 <!---->
-<script src="https://g.alicdn.com/dingding/dinglogin/0.0.5/ddLogin.js"></script>
-<script>
+<script type="text/javascript">
+  appendScriptSrc(location.protocol+"//g.alicdn.com/dingding/dinglogin/0.0.5/ddLogin.js");
   var ddredirect_uri = "";
   var handleMessage = function (event) {
     var origin = event.origin;
-    if (origin == "https://login.dingtalk.com") { //判断是否来自ddLogin扫码事件。
+    console.log("ding handleMessage origin "+origin);
+    if (origin.indexOf("//login.dingtalk.com")>-1) { //判断是否来自ddLogin扫码事件。
       var loginTmpCode = event.data;
       ddredirect_uri = ddredirect_uri + '&loginTmpCode=' + loginTmpCode;
       //获取到loginTmpCode后就可以在这里构造跳转链接进行跳转了
@@ -168,14 +170,13 @@
 </script>
 
 <!--飞书-->
-
-<script src="https://lf-package-cn.feishucdn.com/obj/feishu-static/lark/passport/qrcode/LarkSSOSDKWebQRCode-1.0.3.js"></script>
-
 <script type="text/javascript">
+  appendScriptSrc(location.protocol+"//lf-package-cn.feishucdn.com/obj/feishu-static/lark/passport/qrcode/LarkSSOSDKWebQRCode-1.0.3.js");
   var fsredirectUri = "";
   var QRLoginObj;
   var handleMessage = function (event) {
     var origin = event.origin;
+    console.log("feishu handleMessage origin "+origin);
     // 使用 matchOrigin 方法来判断 message 是否来自飞书页面
     if (QRLoginObj && QRLoginObj.matchOrigin(origin)) {
       var loginTmpCode = event.data;