github.com/qiniu/go-sdk/v7@v7.27.0/examples/rs_list_files/main.go (about)

     1  package main
     2  
     3  import (
     4  	"fmt"
     5  	"os"
     6  
     7  	"github.com/qiniu/go-sdk/v7/auth"
     8  	"github.com/qiniu/go-sdk/v7/storage"
     9  )
    10  
    11  var (
    12  	accessKey = os.Getenv("QINIU_ACCESS_KEY")
    13  	secretKey = os.Getenv("QINIU_SECRET_KEY")
    14  	bucket    = os.Getenv("QINIU_TEST_BUCKET")
    15  )
    16  
    17  func main() {
    18  	mac := auth.New(accessKey, secretKey)
    19  
    20  	cfg := storage.Config{
    21  		// 是否使用https域名进行资源管理
    22  		UseHTTPS: false,
    23  	}
    24  	// 指定空间所在的区域,如果不指定将自动探测
    25  	// 如果没有特殊需求,默认不需要指定
    26  	// cfg.Zone=&storage.ZoneHuabei
    27  	bucketManager := storage.NewBucketManager(mac, &cfg)
    28  
    29  	limit := 1000
    30  	prefix := "qiniu"
    31  	delimiter := ""
    32  	// 初始列举marker为空
    33  	marker := ""
    34  	for {
    35  		entries, _, nextMarker, hashNext, err := bucketManager.ListFiles(bucket, prefix, delimiter, marker, limit)
    36  		if err != nil {
    37  			fmt.Println("list error,", err)
    38  			break
    39  		}
    40  		// print entries
    41  		for _, entry := range entries {
    42  			fmt.Println(entry.Key)
    43  		}
    44  		if hashNext {
    45  			marker = nextMarker
    46  		} else {
    47  			// list end
    48  			break
    49  		}
    50  	}
    51  }