🐛 Fix: add local path picbed into delete api of http server

This commit is contained in:
萌萌哒赫萝
2023-08-10 05:30:46 -07:00
parent 517348886c
commit f585bb4d7d
19 changed files with 228 additions and 262 deletions

View File

@@ -1,35 +1,32 @@
import AliyunApi from './aliyun'
import AwsS3Api from './awss3'
import GithubApi from './github'
import ImgurApi from './imgur'
import LocalApi from './local'
import QiniuApi from './qiniu'
import SftpPlistApi from './sftpplist'
import SmmsApi from './smms'
import TcyunApi from './tcyun'
import AliyunApi from './aliyun'
import QiniuApi from './qiniu'
import ImgurApi from './imgur'
import GithubApi from './github'
import UpyunApi from './upyun'
import AwsS3Api from './awss3'
import WebdavApi from './webdav'
import LocalApi from './local'
import SftpPlistApi from './sftpplist'
const apiMap: IStringKeyMap = {
aliyun: AliyunApi,
'aws-s3': AwsS3Api,
github: GithubApi,
imgur: ImgurApi,
local: LocalApi,
qiniu: QiniuApi,
sftpplist: SftpPlistApi,
smms: SmmsApi,
tcyun: TcyunApi,
aliyun: AliyunApi,
qiniu: QiniuApi,
imgur: ImgurApi,
github: GithubApi,
upyun: UpyunApi,
'aws-s3': AwsS3Api,
webdavplist: WebdavApi,
local: LocalApi,
sftpplist: SftpPlistApi
webdavplist: WebdavApi
}
export default class ALLApi {
static async delete (configMap: IStringKeyMap): Promise<boolean> {
const api = apiMap[configMap.type]
if (api) {
return await api.delete(configMap)
}
return false
return api ? await api.delete(configMap) : false
}
}

View File

@@ -1,13 +1,15 @@
import { ipcRenderer } from 'electron'
import { getRawData } from '~/renderer/utils/common'
import { removeFileFromS3InMain } from '~/main/utils/deleteFunc'
export default class AwsS3Api {
static async delete (configMap: IStringKeyMap): Promise<boolean> {
try {
const deleteResult = await ipcRenderer.invoke('delete-aws-s3-file',
getRawData(configMap)
)
return deleteResult
return ipcRenderer
? await ipcRenderer.invoke('delete-aws-s3-file',
getRawData(configMap)
)
: await removeFileFromS3InMain(getRawData(configMap))
} catch (error) {
console.log(error)
return false

View File

@@ -17,6 +17,8 @@ interface IConfig {
}
export default class ImgurApi {
static baseUrl: 'https://api.imgur.com/3'
private static async makeRequest (
method: 'delete',
url: string,
@@ -35,25 +37,23 @@ export default class ImgurApi {
}
static async delete (configMap: IConfigMap): Promise<boolean> {
const { config = {}, hash = '' } = configMap || {}
const { clientId = '', username = '', accessToken = '' } = config
const baseUrl = 'https://api.imgur.com/3'
let Authorization: string
let apiUrl: string
const {
config: { clientId = '', username = '', accessToken = '' } = {},
hash = ''
} = configMap
let Authorization: string, apiUrl: string
if (username && accessToken) {
Authorization = `Bearer ${accessToken}`
apiUrl = `${baseUrl}/account/${username}/image/${hash}`
apiUrl = `${ImgurApi.baseUrl}/account/${username}/image/${hash}`
} else if (clientId) {
Authorization = `Client-ID ${clientId}`
apiUrl = `${baseUrl}/image/${hash}`
apiUrl = `${ImgurApi.baseUrl}/image/${hash}`
} else {
return false
}
const headers = {
Authorization
}
const requestConfig: IConfig = {
headers,
headers: { Authorization },
timeout: 30000
}
return ImgurApi.makeRequest('delete', apiUrl, requestConfig)

View File

@@ -8,7 +8,7 @@ export default class LocalApi {
static async delete (configMap: IConfigMap): Promise<boolean> {
const { hash } = configMap
if (!hash) {
console.error('SmmsApi.delete: invalid params')
console.error('Local.delete: invalid params')
return false
}

View File

@@ -31,7 +31,7 @@ export default class QiniuApi {
}
})
}) as any
return res && res.respInfo.statusCode === 200
return res?.respInfo?.statusCode === 200
} catch (error) {
console.error(error)
return false