mirror of https://github.com/Xhofe/alist
🐛 fix s3 custom host
parent
cb23edc1fe
commit
1b6ec94f33
|
@ -77,7 +77,7 @@ func (driver S3) Items() []base.Item {
|
||||||
{
|
{
|
||||||
Name: "zone",
|
Name: "zone",
|
||||||
Label: "placeholder filename",
|
Label: "placeholder filename",
|
||||||
Type: base.TypeNumber,
|
Type: base.TypeString,
|
||||||
Description: "default empty string",
|
Description: "default empty string",
|
||||||
},
|
},
|
||||||
}
|
}
|
||||||
|
@ -142,7 +142,7 @@ func (driver S3) Files(path string, account *model.Account) ([]model.File, error
|
||||||
}
|
}
|
||||||
|
|
||||||
func (driver S3) Link(args base.Args, account *model.Account) (*base.Link, error) {
|
func (driver S3) Link(args base.Args, account *model.Account) (*base.Link, error) {
|
||||||
client, err := driver.GetClient(account)
|
client, err := driver.GetClient(account, true)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
return nil, err
|
return nil, err
|
||||||
}
|
}
|
||||||
|
@ -215,7 +215,7 @@ func (driver S3) Rename(src string, dst string, account *model.Account) error {
|
||||||
}
|
}
|
||||||
|
|
||||||
func (driver S3) Copy(src string, dst string, account *model.Account) error {
|
func (driver S3) Copy(src string, dst string, account *model.Account) error {
|
||||||
client, err := driver.GetClient(account)
|
client, err := driver.GetClient(account, false)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
return err
|
return err
|
||||||
}
|
}
|
||||||
|
@ -235,7 +235,7 @@ func (driver S3) Copy(src string, dst string, account *model.Account) error {
|
||||||
}
|
}
|
||||||
|
|
||||||
func (driver S3) Delete(path string, account *model.Account) error {
|
func (driver S3) Delete(path string, account *model.Account) error {
|
||||||
client, err := driver.GetClient(account)
|
client, err := driver.GetClient(account, false)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
return err
|
return err
|
||||||
}
|
}
|
||||||
|
|
|
@ -29,13 +29,13 @@ func (driver S3) NewSession(account *model.Account) (*session.Session, error) {
|
||||||
return session.NewSession(cfg)
|
return session.NewSession(cfg)
|
||||||
}
|
}
|
||||||
|
|
||||||
func (driver S3) GetClient(account *model.Account) (*s3.S3, error) {
|
func (driver S3) GetClient(account *model.Account, link bool) (*s3.S3, error) {
|
||||||
s, ok := sessionsMap[account.Name]
|
s, ok := sessionsMap[account.Name]
|
||||||
if !ok {
|
if !ok {
|
||||||
return nil, fmt.Errorf("can't find [%s] session", account.Name)
|
return nil, fmt.Errorf("can't find [%s] session", account.Name)
|
||||||
}
|
}
|
||||||
client := s3.New(s)
|
client := s3.New(s)
|
||||||
if account.CustomHost != "" {
|
if link && account.CustomHost != "" {
|
||||||
cURL, err := url.Parse(account.CustomHost)
|
cURL, err := url.Parse(account.CustomHost)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
return nil, err
|
return nil, err
|
||||||
|
@ -54,7 +54,7 @@ func (driver S3) GetClient(account *model.Account) (*s3.S3, error) {
|
||||||
func (driver S3) List(prefix string, account *model.Account) ([]model.File, error) {
|
func (driver S3) List(prefix string, account *model.Account) ([]model.File, error) {
|
||||||
prefix = driver.GetKey(prefix, account, true)
|
prefix = driver.GetKey(prefix, account, true)
|
||||||
log.Debugf("list: %s", prefix)
|
log.Debugf("list: %s", prefix)
|
||||||
client, err := driver.GetClient(account)
|
client, err := driver.GetClient(account, false)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
return nil, err
|
return nil, err
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue