![]() |
Chilkat HOME Android™ AutoIt C C# C++ Chilkat2-Python CkPython Classic ASP DataFlex Delphi DLL Go Java Node.js Objective-C PHP Extension Perl PowerBuilder PowerShell PureBasic Ruby SQL Server Swift Tcl Unicode C Unicode C++ VB.NET VBScript Visual Basic 6.0 Visual FoxPro Xojo Plugin
(Visual FoxPro) Create a Google Cloud Storage BucketSee more Google Cloud Storage ExamplesDemonstrates how to create a Google Cloud Storage bucket.Note: This example requires Chilkat v11.0.0 or greater.
LOCAL lnSuccess LOCAL loSbToken LOCAL loJson LOCAL loHttp LOCAL lcUrl LOCAL loResp LOCAL lnResponseCode LOCAL loJsonResp LOCAL loDt lnSuccess = 0 * This example requires the Chilkat API to have been previously unlocked. * See Global Unlock Sample for sample code. * This example uses a previously obtained access token having permission for the * scope "https://www.googleapis.com/auth/cloud-platform" * In this example, Get Google Cloud Storage OAuth2 Access Token, * the service account access token was saved to a text file. This example fetches the access token from the file.. loSbToken = CreateObject('Chilkat.StringBuilder') loSbToken.LoadFile("qa_data/tokens/googleCloudStorageAccessToken.txt","utf-8") * ---- Step 1 * Create a JSON that contains the following information, replacing [VALUES_IN_BRACKETS] with the appropriate values: * { * "name": "[BUCKET_NAME]", * "location": "[BUCKET_LOCATION]", * "storageClass": "[STORAGE_CLASS]" * } loJson = CreateObject('Chilkat.JsonObject') loJson.UpdateString("name","chilkat-ocean") loJson.UpdateString("location","us") loJson.UpdateString("storageClass","multi_regional") * ---- Step 2 * Send a POST equivalent to this curl command * curl -X POST --data-binary @[JSON_FILE_NAME].json \ * -H "Authorization: Bearer [OAUTH2_TOKEN]" \ * -H "Content-Type: application/json" \ * "https://www.googleapis.com/storage/v1/b?project=[PROJECT_ID]" loHttp = CreateObject('Chilkat.Http') loHttp.AuthToken = loSbToken.GetAsString() loHttp.SetUrlVar("project_id","chilkat-176611") lcUrl = "https://www.googleapis.com/storage/v1/b?project={$project_id}" loResp = CreateObject('Chilkat.HttpResponse') lnSuccess = loHttp.HttpJson("POST",lcUrl,loJson,"application/json",loResp) IF (lnSuccess = 0) THEN ? loHttp.LastErrorText RELEASE loSbToken RELEASE loJson RELEASE loHttp RELEASE loResp CANCEL ENDIF lnResponseCode = loResp.StatusCode IF (lnResponseCode = 401) THEN ? loResp.BodyStr ? "If invalid credentials, then it is likely the access token expired." ? "Your app should automatically fetch a new access token and re-try." RELEASE loSbToken RELEASE loJson RELEASE loHttp RELEASE loResp CANCEL ENDIF ? "Response code: " + STR(lnResponseCode) ? "Response body" ? loResp.BodyStr * A successful response looks like this: * Response code: 200 * Response body * { * "kind": "storage#bucket", * "id": "chilkat-ocean", * "selfLink": "https://www.googleapis.com/storage/v1/b/chilkat-ocean", * "projectNumber": "933037264567", * "name": "chilkat-ocean", * "timeCreated": "2017-08-13T12:27:10.811Z", * "updated": "2017-08-13T12:27:10.811Z", * "metageneration": "1", * "location": "US", * "storageClass": "MULTI_REGIONAL", * "etag": "CAE=" * } * * Parse the JSON response: loJsonResp = CreateObject('Chilkat.JsonObject') loJsonResp.Load(loResp.BodyStr) ? "name: " + loJsonResp.StringOf("name") ? "timeCreated: " + loJsonResp.StringOf("timeCreated") * Parse the date/time created. loDt = CreateObject('Chilkat.CkDateTime') loDt.SetFromTimestamp(loJsonResp.StringOf("timeCreated")) * ... RELEASE loSbToken RELEASE loJson RELEASE loHttp RELEASE loResp RELEASE loJsonResp RELEASE loDt |
© 2000-2025 Chilkat Software, Inc. All Rights Reserved.