fix: fix fetch error and db key is ok !!!

This commit is contained in:
H3CoF6
2026-02-09 01:16:47 +08:00
parent b766e051ed
commit 67c1b1af1f
3 changed files with 15 additions and 40 deletions

View File

@@ -345,24 +345,19 @@ export const useApi = () => {
return await request(url) return await request(url)
} }
// 获取数据库解密密钥 // 获取微信进程状态
const getDbKey = () => { const getWxStatus = async () => {
return useFetch('/api/get_db_key', { return await request('/wechat/status')
method: 'GET',
})
} }
// 获取图片解密密钥 // 获取数据库密钥
const getImageKey = () => { const getDbKey = async () => {
return useFetch('/api/get_image_key', { return await request('/get_db_key')
method: 'GET',
})
} }
const getWxStatus = () => { // 获取图片密钥
return useFetch('/api/wechat/status', { const getImageKey = async () => {
method: 'GET', return await request('/get_image_key')
})
} }
return { return {

View File

@@ -514,15 +514,8 @@ const handleGetDbKey = async () => {
formErrors.key = '' formErrors.key = ''
try { try {
const { data: statusData, error: statusError } = await getWxStatus() const statusRes = await getWxStatus() // pid不是主进程但是没关系
const wxStatus = statusRes?.wx_status
if (statusError.value) {
error.value = '无法获取微信状态: ' + statusError.value.message
isGettingDbKey.value = false
return
}
const wxStatus = statusData.value?.wx_status
if (wxStatus?.is_running) { if (wxStatus?.is_running) {
warning.value = '检测到微信正在运行5秒后将终止进程并重启以获取密钥' warning.value = '检测到微信正在运行5秒后将终止进程并重启以获取密钥'
@@ -533,14 +526,7 @@ const handleGetDbKey = async () => {
warning.value = '正在启动微信以获取密钥,请确保微信未开启“自动登录”,并在启动后 1 分钟内完成登录操作。' warning.value = '正在启动微信以获取密钥,请确保微信未开启“自动登录”,并在启动后 1 分钟内完成登录操作。'
const { data, error: fetchError } = await getDbKey() const res = await getDbKey()
if (fetchError.value) {
error.value = '请求失败: ' + fetchError.value.message
return
}
const res = data.value
if (res && res.status === 0) { if (res && res.status === 0) {
if (res.data?.db_key) { if (res.data?.db_key) {
@@ -572,14 +558,8 @@ const handleGetImageKey = async () => {
warning.value = '' warning.value = ''
try { try {
const { data, fetchError } = await getImageKey() const res = await getImageKey()
if (fetchError && fetchError.value) {
error.value = '请求失败: ' + fetchError.value.message
return
}
const res = data.value
if (res && res.status === 0) { if (res && res.status === 0) {
if (res.data?.aes_key) { if (res.data?.aes_key) {
manualKeys.aes_key = res.data.aes_key manualKeys.aes_key = res.data.aes_key

View File

@@ -14,7 +14,7 @@ import logging
from typing import Optional, List from typing import Optional, List
from dataclasses import dataclass from dataclasses import dataclass
from packaging import version as pkg_version # 建议使用 packaging 库处理版本比较 from packaging import version as pkg_version # 建议使用 packaging 库处理版本比较
from wechat_detection import detect_wechat_installation from .wechat_detection import detect_wechat_installation
logger = logging.getLogger(__name__) logger = logging.getLogger(__name__)