日本熟妇hd丰满老熟妇,中文字幕一区二区三区在线不卡 ,亚洲成片在线观看,免费女同在线一区二区

基于S3非Java API的應用開發

本文介紹多語言(例如Go、Python)通過S3協議訪問Lindorm寬表引擎的具體操作和使用示例。

前提條件

  • 已獲取云原生多模數據庫 Lindorm寬表引擎的S3兼容連接地址,具體操作請參見查看連接地址查看連接地址

  • 已將客戶端地址添加至云原生多模數據庫 Lindorm實例的白名單中,具體操作請參見設置白名單

操作步驟

Go SDK訪問Lindorm寬表引擎示例

  1. 安裝Go SDK。

    go get github.com/aws/aws-sdk-go
  2. 使用Go SDK連接并訪問Lindorm寬表引擎。

    package main
    
    import (
     "log"
     "strings"
    
     "github.com/aws/aws-sdk-go/aws"
     "github.com/aws/aws-sdk-go/aws/credentials"
     "github.com/aws/aws-sdk-go/aws/session"
     "github.com/aws/aws-sdk-go/service/s3"
    )
    
    const (
        s3endpoint = "http://ld-bp17j28j2y7pm****-proxy-lindorm.lindorm.rds.aliyuncs.com:9053" // Lindorm寬表引擎的S3兼容連接地址
    )
    
    func main() {
     conf := &aws.Config{
      Credentials:      credentials.NewStaticCredentials("AK", "SK", ""),
      Region:           aws.String("lindorm"),
      Endpoint:         aws.String(s3endpoint),
      S3ForcePathStyle: aws.Bool(true),
     }
    
     sess, err := session.NewSession(conf)
    
    // 創建連接
     svc := s3.New(sess)
    
    // 列舉所有的bucket
     input := &s3.ListBucketsInput{}
    
     result, err := svc.ListBuckets(input)
     if err != nil {
      panic(err.Error())
     }
     println(result.String())
    
     bucket := "testbucketgo"
     key := "testObjectGo"
    
    // 創建bucket
     out, err := svc.CreateBucket(&s3.CreateBucketInput{Bucket: &bucket})
     log.Println(out)
     if err != nil {
      log.Println("Failed to create bucket", err)
      return
     }
    
     if err = svc.WaitUntilBucketExists(&s3.HeadBucketInput{Bucket: &bucket}); err != nil {
      log.Printf("Failed to wait for bucket to exist %s, %s\n", bucket, err)
      return
     }
    
    // 寫入object
     _, err = svc.PutObject(&s3.PutObjectInput{
      Body:   strings.NewReader("Hello World!"),
      Bucket: &bucket,
      Key:    &key,
     })
     if err != nil {
      log.Printf("Failed to upload data to %s/%s, %s\n", bucket, key, err)
      return
     }
    }
    說明

    創建連接時,請將示例中的“AK”和“SK”字段替換為寬表引擎的用戶名和密碼。建議將密碼寫入環境變量或配置文件中,避免采用硬編碼的形式。

Python SDK訪問Lindorm寬表引擎示例

  1. 安裝Python SDK。

    pip install boto3
  2. 使用Python SDK連接并訪問Lindorm寬表引擎。

    import boto3
    from botocore.client import Config
    s3endpoint = 'http://ld-bp17j28j2y7pm****-proxy-lindorm.lindorm.rds.aliyuncs.com:9053' # Lindorm寬表引擎的S3兼容連接地址
     
    # 創建連接
    s3client = boto3.client(
        's3',
        aws_access_key_id="AK", 
        aws_secret_access_key="SK",
        endpoint_url = s3endpoint,
        config=Config(s3={'addressing_style': 'path'})
    )
    
    # 創建bucket 
    s3client.create_bucket(Bucket="testbucketpython")
    
    # 列舉bucket
    buckets = s3client.list_buckets()
    
    # 打印所有bucket
    for bucket in buckets['Buckets']:
        print(bucket["Name"])
    
    # 上傳object
    response = s3client.upload_file("demo.py", "testbucketpython", "demo.py")
    
    # 下載object
    s3client.download_file('testbucketpython', 'demo.py', 'demo.py.download')
    說明

    創建連接時,請將示例中的“AK”和“SK”字段替換為寬表引擎的用戶名和密碼。建議將密碼寫入環境變量或配置文件中,避免采用硬編碼的形式。