committed by
GitHub
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
3 changed files with 40 additions and 113 deletions
@ -1,75 +0,0 @@ |
|||||
package main |
|
||||
|
|
||||
import ( |
|
||||
"bytes" |
|
||||
"context" |
|
||||
"fmt" |
|
||||
"math/rand" |
|
||||
"net/url" |
|
||||
"os" |
|
||||
"time" |
|
||||
|
|
||||
"net/http" |
|
||||
|
|
||||
"github.com/tencentyun/cos-go-sdk-v5" |
|
||||
"github.com/tencentyun/cos-go-sdk-v5/debug" |
|
||||
) |
|
||||
|
|
||||
func genBigData(blockSize int) []byte { |
|
||||
b := make([]byte, blockSize) |
|
||||
if _, err := rand.Read(b); err != nil { |
|
||||
panic(err) |
|
||||
} |
|
||||
return b |
|
||||
} |
|
||||
|
|
||||
func main() { |
|
||||
u, _ := url.Parse("https://test-1253846586.cos.ap-guangzhou.myqcloud.com") |
|
||||
b := &cos.BaseURL{ |
|
||||
BucketURL: u, |
|
||||
} |
|
||||
c := cos.NewClient(b, &http.Client{ |
|
||||
Transport: &cos.AuthorizationTransport{ |
|
||||
SecretID: os.Getenv("COS_SECRETID"), |
|
||||
SecretKey: os.Getenv("COS_SECRETKEY"), |
|
||||
Transport: &debug.DebugRequestTransport{ |
|
||||
RequestHeader: true, |
|
||||
RequestBody: false, |
|
||||
ResponseHeader: true, |
|
||||
ResponseBody: true, |
|
||||
}, |
|
||||
}, |
|
||||
}) |
|
||||
|
|
||||
startTime := time.Now() |
|
||||
|
|
||||
name := fmt.Sprintf("test/test_object_append_%s", startTime.Format(time.RFC3339)) |
|
||||
data := genBigData(1024 * 1024 * 1) |
|
||||
length := len(data) |
|
||||
r := bytes.NewReader(data) |
|
||||
|
|
||||
ctx := context.Background() |
|
||||
|
|
||||
// 第一次就必须 append
|
|
||||
resp, err := c.Object.Append(ctx, name, 0, r, nil) |
|
||||
if err != nil { |
|
||||
panic(err) |
|
||||
return |
|
||||
} |
|
||||
fmt.Printf("%s\n", resp.Status) |
|
||||
|
|
||||
// head
|
|
||||
if _, err = c.Object.Head(ctx, name, nil); err != nil { |
|
||||
panic(err) |
|
||||
return |
|
||||
} |
|
||||
|
|
||||
// 再次 append
|
|
||||
data = genBigData(1024 * 1024 * 5) |
|
||||
r = bytes.NewReader(data) |
|
||||
resp, err = c.Object.Append(context.Background(), name, length, r, nil) |
|
||||
if err != nil { |
|
||||
panic(err) |
|
||||
} |
|
||||
fmt.Printf("%s\n", resp.Status) |
|
||||
} |
|
Write
Preview
Loading…
Cancel
Save
Reference in new issue