Go SDK

Go SDK

AWS SDK for Go omogućava razvoj aplikacija koje koriste HostArena S3 Storage kroz Amazon S3 kompatibilan API.


Šta je potrebno?

Pripremite sledeće podatke iz korisničkog panela:

  • Endpoint

  • Access Key

  • Secret Key

  • Naziv Bucket-a

Primer:

Polje Primer
Endpoint https://username.s3.hostarena.rs
Bucket username
Access Key Dostupan u panelu
Secret Key Dostupan u panelu

Instalacija

Instalirajte AWS SDK:

go get github.com/aws/aws-sdk-go-v2
go get github.com/aws/aws-sdk-go-v2/config
go get github.com/aws/aws-sdk-go-v2/service/s3

Povezivanje

package main

import (
	"context"

	"github.com/aws/aws-sdk-go-v2/aws"
	"github.com/aws/aws-sdk-go-v2/config"
	"github.com/aws/aws-sdk-go-v2/credentials"
	"github.com/aws/aws-sdk-go-v2/service/s3"
)

func main() {

	cfg, _ := config.LoadDefaultConfig(
		context.TODO(),
		config.WithRegion("us-east-1"),
		config.WithCredentialsProvider(
			credentials.NewStaticCredentialsProvider(
				"YOUR_ACCESS_KEY",
				"YOUR_SECRET_KEY",
				"",
			),
		),
	)

	client := s3.NewFromConfig(cfg, func(o *s3.Options) {
		o.BaseEndpoint = aws.String("https://username.s3.hostarena.rs")
		o.UsePathStyle = false
	})

	_ = client
}

Prikaz Bucket-a

result, _ := client.ListBuckets(context.TODO(), &s3.ListBucketsInput{})

for _, bucket := range result.Buckets {
	fmt.Println(*bucket.Name)
}

Prikaz sadržaja Bucket-a

client.ListObjectsV2(
	context.TODO(),
	&s3.ListObjectsV2Input{
		Bucket: aws.String("username"),
	},
)

Upload fajla

file, _ := os.Open("backup.zip")
defer file.Close()

client.PutObject(
	context.TODO(),
	&s3.PutObjectInput{
		Bucket: aws.String("username"),
		Key:    aws.String("backup.zip"),
		Body:   file,
	},
)

Preuzimanje fajla

client.GetObject(
	context.TODO(),
	&s3.GetObjectInput{
		Bucket: aws.String("username"),
		Key:    aws.String("backup.zip"),
	},
)

Brisanje fajla

client.DeleteObject(
	context.TODO(),
	&s3.DeleteObjectInput{
		Bucket: aws.String("username"),
		Key:    aws.String("backup.zip"),
	},
)

Najčešći problemi

InvalidAccessKeyId

Proverite Access Key.


SignatureDoesNotMatch

Proverite Secret Key i Endpoint.


NoSuchBucket

Proverite naziv Bucket-a.


Could not connect

Proverite da li koristite:

https://username.s3.hostarena.rs
  • 0 Els usuaris han Trobat Això Útil
Ha estat útil la resposta?

Articles Relacionats

Šta je S3 Hosting

  Šta je HostArena S3 Storage? HostArena S3 Storage je servis za skladištenje podataka u oblaku...

Cyberduck

Cyberduck Cyberduck je besplatna aplikacija za Windows i macOS koja omogućava jednostavno...

AWS CLI

AWS CLI AWS CLI omogućava upravljanje HostArena S3 Storage servisom direktno iz komandne linije....

rclone

rclone rclone je jedan od najpopularnijih alata za sinhronizaciju i upravljanje cloud...

rclone

MinIO Client (mc) MinIO Client (mc) je komandni alat za upravljanje Amazon S3 kompatibilnim...

Powered by WHMCompleteSolution