1package cloudflare_test 2 3import ( 4 "context" 5 "fmt" 6 "log" 7 8 cloudflare "github.com/cloudflare/cloudflare-go" 9) 10 11var ( 12 workerScript = "addEventListener('fetch', event => {\n event.passThroughOnException()\nevent.respondWith(handleRequest(event.request))\n})\n\nasync function handleRequest(request) {\n return fetch(request)\n}" 13) 14 15func ExampleAPI_UploadWorker() { 16 api, err := cloudflare.New(apiKey, user) 17 if err != nil { 18 log.Fatal(err) 19 } 20 21 zoneID, err := api.ZoneIDByName(domain) 22 if err != nil { 23 log.Fatal(err) 24 } 25 26 res, err := api.UploadWorker(context.Background(), &cloudflare.WorkerRequestParams{ZoneID: zoneID}, workerScript) 27 if err != nil { 28 log.Fatal(err) 29 } 30 fmt.Printf("%+v", res) 31 32 UploadWorkerWithName() 33} 34 35func UploadWorkerWithName() { 36 api, err := cloudflare.New(apiKey, user, cloudflare.UsingAccount("foo")) 37 if err != nil { 38 log.Fatal(err) 39 } 40 41 res, err := api.UploadWorker(context.Background(), &cloudflare.WorkerRequestParams{ScriptName: "baz"}, workerScript) 42 if err != nil { 43 log.Fatal(err) 44 } 45 fmt.Printf("%+v", res) 46} 47 48func ExampleAPI_DownloadWorker() { 49 api, err := cloudflare.New(apiKey, user) 50 if err != nil { 51 log.Fatal(err) 52 } 53 54 zoneID, err := api.ZoneIDByName(domain) 55 if err != nil { 56 log.Fatal(err) 57 } 58 59 res, err := api.DownloadWorker(context.Background(), &cloudflare.WorkerRequestParams{ZoneID: zoneID}) 60 if err != nil { 61 log.Fatal(err) 62 } 63 fmt.Printf("%+v", res) 64 65 DownloadWorkerWithName() 66} 67 68func DownloadWorkerWithName() { 69 api, err := cloudflare.New(apiKey, user, cloudflare.UsingAccount("foo")) 70 if err != nil { 71 log.Fatal(err) 72 } 73 74 res, err := api.DownloadWorker(context.Background(), &cloudflare.WorkerRequestParams{ScriptName: "baz"}) 75 if err != nil { 76 log.Fatal(err) 77 } 78 fmt.Printf("%+v", res) 79} 80 81func ExampleAPI_DeleteWorker() { 82 api, err := cloudflare.New(apiKey, user) 83 if err != nil { 84 log.Fatal(err) 85 } 86 87 zoneID, err := api.ZoneIDByName(domain) 88 if err != nil { 89 log.Fatal(err) 90 } 91 res, err := api.DeleteWorker(context.Background(), &cloudflare.WorkerRequestParams{ZoneID: zoneID}) 92 if err != nil { 93 log.Fatal(err) 94 } 95 fmt.Printf("%+v", res) 96 97 DeleteWorkerWithName() 98} 99 100func DeleteWorkerWithName() { 101 api, err := cloudflare.New(apiKey, user, cloudflare.UsingAccount("foo")) 102 if err != nil { 103 log.Fatal(err) 104 } 105 106 res, err := api.DeleteWorker(context.Background(), &cloudflare.WorkerRequestParams{ScriptName: "baz"}) 107 if err != nil { 108 log.Fatal(err) 109 } 110 fmt.Printf("%+v", res) 111} 112 113func ExampleAPI_ListWorkerScripts() { 114 api, err := cloudflare.New(apiKey, user, cloudflare.UsingAccount("foo")) 115 if err != nil { 116 log.Fatal(err) 117 } 118 119 res, err := api.ListWorkerScripts(context.Background()) 120 if err != nil { 121 log.Fatal(err) 122 } 123 fmt.Printf("%+v", res.WorkerList) 124} 125 126func ExampleAPI_CreateWorkerRoute() { 127 api, err := cloudflare.New(apiKey, user) 128 if err != nil { 129 log.Fatal(err) 130 } 131 132 zoneID, err := api.ZoneIDByName(domain) 133 if err != nil { 134 log.Fatal(err) 135 } 136 route := cloudflare.WorkerRoute{Pattern: "app1.example.com/*", Enabled: true} 137 res, err := api.CreateWorkerRoute(context.Background(), zoneID, route) 138 if err != nil { 139 log.Fatal(err) 140 } 141 fmt.Printf("%+v", res) 142} 143 144func ExampleAPI_UpdateWorkerRoute() { 145 api, err := cloudflare.New(apiKey, user) 146 if err != nil { 147 log.Fatal(err) 148 } 149 150 zoneID, err := api.ZoneIDByName(domain) 151 if err != nil { 152 log.Fatal(err) 153 } 154 // pull from existing list of routes to perform update on 155 routesResponse, err := api.ListWorkerRoutes(context.Background(), zoneID) 156 if err != nil { 157 log.Fatal(err) 158 } 159 route := cloudflare.WorkerRoute{Pattern: "app2.example.com/*", Enabled: true} 160 // update first route retrieved from the listWorkerRoutes call with details above 161 res, err := api.UpdateWorkerRoute(context.Background(), zoneID, routesResponse.Routes[0].ID, route) 162 if err != nil { 163 log.Fatal(err) 164 } 165 fmt.Printf("%+v", res) 166} 167 168func ExampleAPI_ListWorkerRoutes() { 169 api, err := cloudflare.New(apiKey, user) 170 if err != nil { 171 log.Fatal(err) 172 } 173 174 zoneID, err := api.ZoneIDByName(domain) 175 if err != nil { 176 log.Fatal(err) 177 } 178 res, err := api.ListWorkerRoutes(context.Background(), zoneID) 179 if err != nil { 180 log.Fatal(err) 181 } 182 fmt.Printf("%+v", res) 183} 184 185func ExampleAPI_DeleteWorkerRoute() { 186 api, err := cloudflare.New(apiKey, user) 187 if err != nil { 188 log.Fatal(err) 189 } 190 191 zoneID, err := api.ZoneIDByName(domain) 192 if err != nil { 193 log.Fatal(err) 194 } 195 // pull from existing list of routes to perform delete on 196 routesResponse, err := api.ListWorkerRoutes(context.Background(), zoneID) 197 if err != nil { 198 log.Fatal(err) 199 } 200 // delete first route retrieved from the listWorkerRoutes call 201 res, err := api.DeleteWorkerRoute(context.Background(), zoneID, routesResponse.Routes[0].ID) 202 if err != nil { 203 log.Fatal(err) 204 } 205 fmt.Printf("%+v", res) 206} 207