使用go進行云存儲上傳實現(xiàn)實例
更新時間:2024年01月04日 14:41:25 作者:pkg6
這篇文章主要為大家介紹了使用go進行云存儲上傳實例,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪<BR>
關于 About Flysystem
Flysystem是Golang的一個文件存儲庫。它提供了一個與多種類型的文件系統(tǒng)交互的接口。當您使用Flysystem時,您不僅可以免受供應商鎖定,還可以獲得始終如一的存儲體驗。
安裝 Install
安裝命令
$ go get github.com/pkg6/go-flysystem
示例 example
package main
import (
"fmt"
"github.com/pkg6/go-flysystem"
"github.com/pkg6/go-flysystem/local"
"strings"
)
func main() {
//Define the root directory of the local adapter
root := "./_example/test_data"
// Create local adapter
localAdapter := local.New(&local.Config{Root: root})
//Initialize the adapter
adapters := flysystem.NewAdapters(localAdapter)
adapters.Extend(local.New(&local.Config{Root: "./_example/test_data/2"}), "local2")
var err error
_, err = adapters.WriteReader("4.txt", strings.NewReader("test"))
fmt.Println(err)
adapter, err := adapters.Adapter("local2")
_, err = adapter.WriteReader("4.txt", strings.NewReader("test"))
fmt.Println(err)
//Write file
_, err = adapters.Write("1.txt", []byte("test data"))
fmt.Println(err)
//Write data from resource file
_, err = adapters.WriteStream("2.txt", root+"/1.txt")
fmt.Println(err)
//Update file
_, err = adapters.Update("1.txt", []byte("test update data"))
fmt.Println(err)
//Update data from resource file
_, err = adapters.UpdateStream("2.txt", root+"/1.txt")
fmt.Println(err)
exists, _ := adapters.Exists("2.txt")
fmt.Println(exists)
//Read file
read, err := adapters.Read("2.txt")
fmt.Println(read, err)
//Get file mime type
mimeType, err := adapters.MimeType("2.txt")
fmt.Println(mimeType, err)
//Get file size
size, err := adapters.Size("2.txt")
fmt.Println(size, err)
//Move file
_, err = adapters.Move("1.txt", "4.txt")
fmt.Println(err)
//Copy file
_, err = adapters.Copy("2.txt", "5.txt")
fmt.Println(err)
}You can always create an adapter yourself.
由此你可以創(chuàng)建自己的適配器了。
本文譯自 https://github.com/pkg6/go-flysystem
以上就是使用go進行云存儲上傳實現(xiàn)實例的詳細內容,更多關于go云存儲上傳的資料請關注腳本之家其它相關文章!

