liming 5 روز پیش
والد
کامیت
755714f64f
8فایلهای تغییر یافته به همراه98 افزوده شده و 9 حذف شده
  1. 3 3
      .env
  2. 1 1
      capacitor.config.ts
  3. 30 0
      certDev/cert.pem
  4. 52 0
      certDev/key.pem
  5. 4 2
      src/App.vue
  6. 1 1
      src/stores/modules/webSocketStore.js
  7. 2 1
      src/views/im/chat/index.vue
  8. 5 1
      vite.config.js

+ 3 - 3
.env

@@ -11,9 +11,9 @@ VITE_PRO_PATH='https://wallet.angeltokens.io'
 # VITE_PRO_IM_PATH='https://nim.angeltokens.io'
 # VITE_DEV_IM_PATH='https://nim.angeltokens.io'#https://nim.angeltokens.io
 
-VITE_PRO_IM_PATH='http://192.168.0.59:8888'
-VITE_DEV_IM_PATH='http://192.168.0.59:8888'
+VITE_PRO_IM_PATH='https://192.168.0.59:8888'
+VITE_DEV_IM_PATH='https://192.168.0.59:8888'
 
-VITE_IM_PATH_FIlE ='http://192.168.0.59:8888/api/v1/file/'
+VITE_IM_PATH_FIlE ='https://192.168.0.59:8888/api/v1/file/'
 
 VITE_PRO_BACKEND_PATH='https://backend.angeltoken.net'

+ 1 - 1
capacitor.config.ts

@@ -53,7 +53,7 @@ const config: CapacitorConfig = {
 // 开发服务器配置(热更新用)
 if (process.env.DAPP_BUILD != "1") {
   config.server = {
-    url: 'http://192.168.0.59:5173',
+    url: 'https://192.168.0.59:5173',
     cleartext: true,          // 允许HTTP明文通信(仅开发环境)
     allowNavigation: ['*']    // 允许任意URL导航
   }

+ 30 - 0
certDev/cert.pem

@@ -0,0 +1,30 @@
+-----BEGIN CERTIFICATE-----
+MIIFIzCCAwugAwIBAgIUUdnWWlUfj17Cm8UjJIF5fqcDJCYwDQYJKoZIhvcNAQEL
+BQAwEDEOMAwGA1UEAwwFbXlhcHAwHhcNMjUwNzAxMDM1ODUwWhcNMjYwNzAxMDM1
+ODUwWjAQMQ4wDAYDVQQDDAVteWFwcDCCAiIwDQYJKoZIhvcNAQEBBQADggIPADCC
+AgoCggIBAMWa2oph0lJ4CYdzshi2hSMo0tRyFrqy6Eh+A53jYZrInqKTLuCdIV0c
+ELhA3bhuQ55KSJMGLxxLcf89fpg09PC9vmgwi/csNQWJRu3BwoFH3buqHZ928H+q
+twCWuaBA0tobGnQiBp4KTpL4dLsXcAV/o6o0hfvavFngTvwy2ECd6tNATKCS157u
+ZC8lCaBO2zDyU9HGfeBNEG5uJf8WKNnV7hHaENtlWUJpBBikp+0X8vLKDh+8eu/M
+2UAw76xrYCr6kFbJPVP2Roxa33/FSGbcVdXNGXbxmGaV2Kw6S0IhhHNemivDQ+eY
+w4uOuMZiTl61fM9lZjs6DNf+WIqJ43NoCdVKRNIaTaYYu8RmNY1GioXUeU5d7L5y
++4DS8wpI7IkO+J6P0wSLNVPpUC8ZfZPjL1FPd6o5twozKSJr2yA0npgneF1wNVyf
+7C21bh9MonvTTwh/+1krR3GMkY59wOBLNs49jeF7O9WprTV4OP/Ak8qmbV19nn48
+CNqTtb+FnmPQqJ+cn5Tqcm26Ifo2BHkum3EnoWdDwcfJTyJxENx0k0JLCRTEvhdX
+f5fB74R+QIYxOPNKH07icYWnWBelNAzXufGUFIvgy8/AuB0lzlJKqzOxXBQH+U5P
++eeTHeO4SuFAyNxHwBXlM9Niy+0NBjzXzo78eTapMbEA8zy/ITNVAgMBAAGjdTBz
+MB0GA1UdDgQWBBSbZopaBbU70V4RjRVUoiiT1eIzJTAfBgNVHSMEGDAWgBSbZopa
+BbU70V4RjRVUoiiT1eIzJTAPBgNVHRMBAf8EBTADAQH/MCAGA1UdEQQZMBeCCWxv
+Y2FsaG9zdIcEfwAAAYcEwKgAOzANBgkqhkiG9w0BAQsFAAOCAgEAtlvrMCdXeVsl
+gh9ungqo6Ef9J+JHfzFSlvP8nS+z3LbgPnZY4cZB730TxKCvwOHwYxwlv2iBAlrS
+96RK9+UToOhfUo2x1HS63hHJRwpkI4XqC68oPEfhv8JvvBAHy/IcKB0skRlabGm5
+MvsVb5xMf5PCRH2Trw45qZqC6Ooof+9MNqgGbBxqIi56LNrx6o3NUU3LESn+5R+A
+S7ULwrQfAzQ1/4xdodRperhTw53JXeAI0hsZ4Qdh6/F9y6lEeaBMFRMZBJC1xf9/
+Ygf7D82ClJzjCumt/eH5phQfFigmw7ccczVV9QSa79qf4YK5AACT3e76b4KrdA7F
+dbUqZFzUuBbUIt/qjnJWOUcKyRXoyC/k1LVh+x7bljbohDnTnhHG1tNAsbC25jNH
+YfGe7cpE+tE4ITudnRPw7okMoAWcKaD4Jx/4+Tncs63raK2lgD9HQeJrylXBV8O7
+kIefbzmoRO0ETGY8tVxy4zr7vVBHGJUk/knoyD0BMv4qWfjH0327/Gfh09UlEmig
+supMna4s/94PJ+XGTcWGC7xRL/PjnvPy4/61qpkYMa4TM4bXKNumqYbAPBxzODOc
+r2bdey/8/a9VuUGk793x3xVgcwTA9hNEIswqF9iw5qX+sRfXX8CTHkSw4f48WTYQ
+oQuda8xfcq1Qqx1g5zt/0A2NrCB94Ts=
+-----END CERTIFICATE-----

+ 52 - 0
certDev/key.pem

@@ -0,0 +1,52 @@
+-----BEGIN PRIVATE KEY-----
+MIIJQwIBADANBgkqhkiG9w0BAQEFAASCCS0wggkpAgEAAoICAQDFmtqKYdJSeAmH
+c7IYtoUjKNLUcha6suhIfgOd42GayJ6iky7gnSFdHBC4QN24bkOeSkiTBi8cS3H/
+PX6YNPTwvb5oMIv3LDUFiUbtwcKBR927qh2fdvB/qrcAlrmgQNLaGxp0IgaeCk6S
++HS7F3AFf6OqNIX72rxZ4E78MthAnerTQEygktee7mQvJQmgTtsw8lPRxn3gTRBu
+biX/FijZ1e4R2hDbZVlCaQQYpKftF/Lyyg4fvHrvzNlAMO+sa2Aq+pBWyT1T9kaM
+Wt9/xUhm3FXVzRl28ZhmldisOktCIYRzXporw0PnmMOLjrjGYk5etXzPZWY7OgzX
+/liKieNzaAnVSkTSGk2mGLvEZjWNRoqF1HlOXey+cvuA0vMKSOyJDviej9MEizVT
+6VAvGX2T4y9RT3eqObcKMykia9sgNJ6YJ3hdcDVcn+wttW4fTKJ7008If/tZK0dx
+jJGOfcDgSzbOPY3hezvVqa01eDj/wJPKpm1dfZ5+PAjak7W/hZ5j0KifnJ+U6nJt
+uiH6NgR5LptxJ6FnQ8HHyU8icRDcdJNCSwkUxL4XV3+Xwe+EfkCGMTjzSh9O4nGF
+p1gXpTQM17nxlBSL4MvPwLgdJc5SSqszsVwUB/lOT/nnkx3juErhQMjcR8AV5TPT
+YsvtDQY8186O/Hk2qTGxAPM8vyEzVQIDAQABAoICAB7PSW5EmMirdx7jstvID4Of
+IJonrLQQ44c0AKfcNVJvH87M4IT8cuCD2PaFhJx2MrxKLD0iPHOurrhDdArSzPMB
+PqAbm6MfBShXElRNPuCt3hxdxo8fuhlJuo1QsuIR4V5I1gvP51S6WixvqTGnkpuE
+3nWSCWbuoKnpv57yZYXTqXKlJp1tr8lTtZKlNXZFfUcJLXj6eBNiKKLzMSDv6VAn
+mx408CZpC6z/VzhpadZdgs+IogGgP1HG0IPB7YimWEDzPtCNQW7nKfJF0+2lyqdh
+CNAUUblaK28pQ3Z9A1FtDOv5DtQudpa0Wp7Wkqg52SrKpMpobrNi1nBR86esHqaQ
+ZqPnlKjRE4V+6UDws30Nfr+42cHiGVJqatx9k0gbykFu/xx6ZGE+fJxG/G4vak64
+hLgeN4vckCtsMvWiDWwAiyt2cMLFgSLuHH7ASkLycp507tBS7/+zZSqC0Et2tQJR
+rCoq9VQsYTKE0y4/3VJZk9K9vkfwge66moLKlCNTPx45ZYnIyQX/i1NKpdbWwYlx
+NXrNRBFMWi0t/OF5ES8lD4WZlrRPJGg1Fw+pnIedYv/xvn+l15LtuhYB5uqvyGsk
+NE7qjaq1BUXv0bIvCxUSeVo2awpWNHcXQYwgS/DzvJjwM+zbdPuvJoChVNKvBZXB
++YzHJmcwxShpKrNx2nAJAoIBAQDlOzkT9+d/Z2qwd//ZigwdvSuItvT90abtGhdh
+2F9BW+ZqTCqib9Dz8DBRtSx+5c/gZ44aEhSQEQU8dE+t1AzUYEQnho2aBybRuVw1
+L6N1/H2QDXhXSuoUWXefnBRBWOdo7wg0ekm63p63zG8Z80if8zn2t72lVe2XKae0
+ZwF6herXfXKAPY4jwyMKw2VaC/RdsD6kCsKksn5qkwZls5GEDh3C0R0m2759hip5
+QtuzgGNgz2mK4kSjyAXNl1Sk6VZCuQCeeXse0UT0lp26zsQf5PVkf4gVSL3RTV+s
+QXycSo9g5qLabn7Jp28Cj+V5DsBnOWvFyeMVGsHftB5ddeU5AoIBAQDcrivRXzoE
+klO5HiKjUeBmS0IqzVxEMpqdOrwzT1NI/q6mY3+e7KV0b+34OwVQQP2OYnTZmQRT
+hWNPpfCGJSNfkA7Mz8cskpMymEmOGSLQGgLCKz2Txv9GAgcHaefEwK9avJNeVsaj
+uat3fo1Iiwtz7MASpns9u79ccXsWACJQweoYLylR2e4o3c6g4qsqsOsDt1FvoW1G
+RyxatLt7/lRY3mpyU7db7RlCnWgH6dCY7emWIjbbL54DfG3YCeo17zVPhq9PmEP3
+0yWmI/2ODba6EXEyAR/OUUEtVDcIr/b0RzQY+In53wmEGnMGEBkxvSe7vaLRMJR7
+Ek0NcG7h5Pr9AoIBAQCMk+AyJcLbeBGOvVizERzTFBLhmcnu6qajG3Ahei8YhwJs
+R9+RlF8hajhHs4LhI5BzPy5/QH1JyJZcd7vxj2x6xbqmPrcSMbaVwUYR+/ATyE88
+i3Y0mmWpKyDYSkCFvr7TtFtky2Xx6tqNPxsXYAI2zVPLwOzVuzekj1Agq1bVy9C0
+bGNOz/Eeb2pLDH9YVKJ83jvcIBk0JZ6vPxEaR6BCyuFnexSUowhUNHZRvTW9BExt
+r2U7Xf3YLy+X4GlxZQOYkZoWlctyn8XY9ZEvYeQW5zOyeR98Zgq6k+fLXLHNq0/4
+jhhrOn4Yrsy+Vn7U2b4Wz7kPJ/tSEwG4bd59VHLJAoIBADb9o+ehjiiTeg94JfOC
+tKNo/40A7YwE/ChP+ZPjoYJgDI9j3epxV+2C8s7XjkRoXYa8nBeZHM3fQFcZp60V
+1hG7KST6ZcyCnfGOp02kj9tBkAxokAiiHvyIBs5fIqURyuCWezaX8xnba5H0VCqO
+k4UIqvg6yh0hCtdzY9Ogpuxu1fG+1tIRt1oxo4rN0Q9rVLTxWnaxyDQqCjB0Nv/3
+6XbXvbjNibR7ib7i0IigSB3Ds2B5GChYXkzKFeku11EnUaaGjmsMK2u3DvuunkFm
+w3DsZcOrKgzUjKRKBwjAKI7Iq3/Jd0BvxsRHfwA0xMJzO1J6N/de3rEoZ1EBAnCC
+CdUCggEBAKIEugHD5W/NqRG/g309h+C24r3FtdoycRgQCGpgEdk2/GHHJmw8DCqn
+sO1fpWzsmWNOBBG/8VcJuUfXglNjSfkhE0RgpOUlgYCS9jGGBy6dNaX3aur1sY25
+MMn1YLi4qNZOhNas2UsdL3FvQcEpPO/I+8cZcgD9YdXS4fdiLM65RdrxECHfKO5Y
+mVz/TfbhhiEggfmHQkmR/0V5dJJ6RqyLq1OqDxYgD1IAIbqh7i/MsNOCj/0dvLTN
+wcnxiVUPmfgWNRUkO1JtfFionikxA26mCEVEAmElCwHy0dsXVBraMcrINZnwtF4P
+E4qHmKMtNCK9RuRN2iakxJmG9Lm3gCo=
+-----END PRIVATE KEY-----

+ 4 - 2
src/App.vue

@@ -60,8 +60,10 @@ onBeforeMount(async () => {
   notchStyle.value = {
     paddingTop: `${height.value}px`,
   };
-
-  checkAndUpdate();
+  // 检查更新:开发环境不检测更新
+  if (process.env.NODE_ENV !== "development") {
+    checkAndUpdate();
+  }
 });
 
 onMounted(() => {

+ 1 - 1
src/stores/modules/webSocketStore.js

@@ -141,7 +141,7 @@ export const useWebSocketStore = defineStore("webSocketStore", {
 
       this.peer = new RTCPeerConnection();
       this.socket = new WebSocket(
-        `ws://192.168.0.59:8888/api/v1/socket.io?user=${userUuid}`
+        `wss://192.168.0.59:8888/api/v1/socket.io?user=${userUuid}`
       );
       // 连接成功
       this.socket.onopen = () => {

+ 2 - 1
src/views/im/chat/index.vue

@@ -428,9 +428,10 @@ const beforeRead = (file) => {
 //  创建呼叫:开启语音电话: 调试用,正式逻辑读src/views/im/hook/messagesHook.js
 const startAudioOnline = async () => {
   showVoiceCall.value = true;
+  await navigator.mediaDevices.getUserMedia({ audio: true });
   // 初始化webrtc连接
   rtcStore.initConnection(true);
-
+  // 获取视频和音频权限 
   navigator.mediaDevices
     .getUserMedia({ audio: true })
     .then((stream) => {

+ 5 - 1
vite.config.js

@@ -6,7 +6,7 @@ import vueJsx from "@vitejs/plugin-vue-jsx";
 import { createSvgIconsPlugin } from "vite-plugin-svg-icons";
 import { codeInspectorPlugin } from "code-inspector-plugin";
 import AutoImport from "unplugin-auto-import/vite";
-
+import fs from "fs";
 import { resolve } from "path";
 
 // https://vite.dev/config/
@@ -72,6 +72,10 @@ export default defineConfig(({ mode }) => {
       open: true,
       cors: true,
       hmr: true,
+      https: {
+        key: fs.readFileSync('./certDev/key.pem'),
+        cert: fs.readFileSync('./certDev/cert.pem'),
+      },
       proxy: {
         "/api/v2": {
           target: env.VITE_PRO_BACKEND_PATH,