Go SDK 发布事件 示例代码如下: plaintext package main import ( "context" cloudevents "github.com/cloudevents/sdkgo/v2" "github.com/cloudevents/sdkgo/v2/protocol/http" "github.com/google/uuid" "log" "time" ) func main() { ak : "xxx" sk : "xxx" target : " // CloudEvent client c, err : cloudevents.NewClientHTTP() if err ! nil { log.Fatalf("failed to create client, %v", err) } //事件内容 event : cloudevents.NewEvent() event.SetID(uuid.New().String()) event.SetSource("ctyun.oss") event.SetType("oss:createbucket") event.SetSubject("ctyun.oss:huadong1:1234567891234:bucketnamexxx") event.SetExtension("ctyuneventbusname", "mybus") event.SetExtension("ctyunaccountid", "5d4ce56axxxxxxxx92ac5884") event.SetExtension("logproject", "111111111111") event.SetTime(time.Now()) event.SetDataContentType("application/json;charsetutf8") event.SetData(cloudevents.ApplicationJSON, map[string]interface{}{ "aaa": 1234, "bbb": "Hello, World!", }) request : NewRequest() request.Method String("POST") request.Pathname String("/api/v1/putEvents") request.Headers map[string]string{ "contenttype": String("application/json"), } stringToSign : GetStringToSign(request) token : "ceb:" + ak + ":" + StringValue(GetSignature(stringToSign, String(sk))) // Set a target. ctx : cloudevents.ContextWithTarget(context.Background(), target) header : map[string][]string{"authorization": {token}} ctx http.WithCustomHeader(ctx, header) // Send that Event. result : c.Send(ctx, event) log.Printf("result: %v", result) }