2
0
mirror of https://github.com/acepanel/panel.git synced 2026-02-04 01:57:19 +08:00

fix: 添加校验

This commit is contained in:
2026-01-24 22:47:23 +08:00
parent cd615046ff
commit 857cff0460
4 changed files with 6 additions and 22 deletions

View File

@@ -400,7 +400,6 @@ func (r *backupRepo) getStorage(backupStorage biz.BackupStorage) (storage.Storag
return storage.NewLocal(backupStorage.Info.Path)
case biz.BackupStorageTypeS3:
return storage.NewS3(storage.S3Config{
Region: backupStorage.Info.Region,
Bucket: backupStorage.Info.Bucket,
AccessKeyID: backupStorage.Info.AccessKey,
SecretAccessKey: backupStorage.Info.SecretKey,

View File

@@ -124,7 +124,6 @@ func (s *BackupStorageService) validateStorage(accountType string, info types.Ba
switch biz.BackupStorageType(accountType) {
case biz.BackupStorageTypeS3:
client, err = storage.NewS3(storage.S3Config{
Region: info.Region,
Bucket: info.Bucket,
AccessKeyID: info.AccessKey,
SecretAccessKey: info.SecretKey,

View File

@@ -4,13 +4,12 @@ import "time"
type BackupStorageInfo struct {
// S3
AccessKey string `json:"access_key"` // 访问密钥
SecretKey string `json:"secret_key"` // 私钥
Style string `json:"style"` // virtual-hosted, path
Region string `json:"region"` // 地区
Endpoint string `json:"endpoint"` // 端点
Scheme string `json:"scheme"` // http, https
Bucket string `json:"bucket"` // 存储桶
AccessKey string `json:"access_key"` // 访问密钥
SecretKey string `json:"secret_key"` // 私钥
Style string `json:"style" validate:"required|in:path,virtual-hosted"` // virtual-hosted, path
Endpoint string `json:"endpoint" validate:"required"` // 端点
Scheme string `json:"scheme" validate:"required|in:http,https"` // http, https
Bucket string `json:"bucket" validate:"required"` // 存储桶
// SFTP / WebDAV
URL string `json:"url"` // 网址

View File

@@ -38,7 +38,6 @@ const defaultModel = {
access_key: '',
secret_key: '',
style: 'virtual_hosted',
region: '',
endpoint: '',
scheme: 'https',
bucket: '',
@@ -247,12 +246,6 @@ onMounted(() => {
<n-form-item :label="$gettext('Style')">
<n-select v-model:value="createModel.info.style" :options="styleOptions" />
</n-form-item>
<n-form-item :label="$gettext('Region')">
<n-input
v-model:value="createModel.info.region"
:placeholder="$gettext('Enter region (e.g., us-east-1)')"
/>
</n-form-item>
<n-form-item :label="$gettext('Endpoint')" required>
<n-input
v-model:value="createModel.info.endpoint"
@@ -401,12 +394,6 @@ onMounted(() => {
<n-form-item :label="$gettext('Style')">
<n-select v-model:value="editModel.info.style" :options="styleOptions" />
</n-form-item>
<n-form-item :label="$gettext('Region')">
<n-input
v-model:value="editModel.info.region"
:placeholder="$gettext('Enter region (e.g., us-east-1)')"
/>
</n-form-item>
<n-form-item :label="$gettext('Endpoint')" required>
<n-input
v-model:value="editModel.info.endpoint"