Chilkat HOME Android™ Classic ASP C C++ C# Mono C# .NET Core C# C# UWP/WinRT DataFlex Delphi ActiveX Delphi DLL Visual FoxPro Java Lianja MFC Objective-C Perl PHP ActiveX PHP Extension PowerBuilder PowerShell PureBasic CkPython Chilkat2-Python Ruby SQL Server Swift 2 Swift 3,4,5... Tcl Unicode C Unicode C++ Visual Basic 6.0 VB.NET VB.NET UWP/WinRT VBScript Xojo Plugin Node.js Excel Go
(VB.NET UWP/WinRT) Google Cloud SQL - Start Database InstanceDemonstrates how to start a Google Cloud SQL database instance. For more information, see https://cloud.google.com/sql/docs/mysql/start-stop-restart-instance
' This example assumes the Chilkat API to have been previously unlocked. ' See Global Unlock Sample for sample code. ' In this example, Get Google Cloud SQL OAuth2 Access Token, ' the service account access token was saved to a text file. This example fetches the access token from the file.. Dim sbToken As New Chilkat.StringBuilder sbToken.LoadFile("qa_data/tokens/google_cloud_sql_access_token.txt","utf-8") Dim http As New Chilkat.Http Dim success As Boolean ' Implements the following CURL command: ' curl -X PATCH \ ' -H "Authorization: Bearer "$(gcloud auth print-access-token) \ ' -H "Content-Type: application/json; charset=utf-8" \ ' -d '{ ' "settings": { ' "activationPolicy": "ALWAYS" ' } ' }' \ ' https://www.googleapis.com/sql/v1beta4/projects/project-id/instances/instance-id ' Use this online tool to generate code from sample JSON: ' Generate Code to Create JSON ' The following JSON is sent in the request body. ' { ' "settings": { ' "activationPolicy": "ALWAYS" ' } ' } ' Use "ALWAYS" to start an instance. Use "NEVER" to stop an instance. Dim json As New Chilkat.JsonObject json.UpdateString("settings.activationPolicy","ALWAYS") ' Causes the "Authorization: Bearer "$(gcloud auth print-access-token)" header to be added. http.AuthToken = sbToken.GetAsString() http.SetRequestHeader("Content-Type","application/json; charset=utf-8") Dim sbRequestBody As New Chilkat.StringBuilder json.EmitSb(sbRequestBody) ' Replace "project-id" with your actual Google project ID. ' Replace "instance-id" with your database instance ID, which is the name of your database. (For example, when I created my test database I named it "chilkat", and therefore my instance-id is "chilkat".) Dim resp As Chilkat.HttpResponse = Await http.PTextSbAsync("PATCH","https://www.googleapis.com/sql/v1beta4/projects/project-id/instances/instance-id",sbRequestBody,"utf-8","application/json",False,False) If (http.LastMethodSuccess = False) Then Debug.WriteLine(http.LastErrorText) Exit Sub End If Dim sbResponseBody As New Chilkat.StringBuilder resp.GetBodySb(sbResponseBody) Dim jResp As New Chilkat.JsonObject jResp.LoadSb(sbResponseBody) jResp.EmitCompact = False Debug.WriteLine("Response Body:") Debug.WriteLine(jResp.Emit()) Dim respStatusCode As Integer = resp.StatusCode Debug.WriteLine("Response Status Code = " & respStatusCode) If (respStatusCode = 401) Then Debug.WriteLine("It may be that your access token expired.") Debug.WriteLine("Try refreshing the access token by re-fetching it.") End If If (respStatusCode >= 400) Then Debug.WriteLine("Response Header:") Debug.WriteLine(resp.Header) Debug.WriteLine("Failed.") Exit Sub End If ' Sample JSON response: ' (Sample code for parsing the JSON response is shown below) ' { ' "kind": "sql#operation", ' "targetLink": "https://www.googleapis.com/sql/v1beta4/projects/project-id/instances/instance-id", ' "status": "PENDING", ' "user": "user@example.com", ' "insertTime": "2020-01-20T21:30:35.667Z", ' "operationType": "UPDATE", ' "name": "operation-id", ' "targetId": "instance-id", ' "selfLink": "https://www.googleapis.com/sql/v1beta4/projects/project-id/operations/operation-id", ' "targetProject": "project-id" ' } ' Sample code for parsing the JSON response... ' Use the following online tool to generate parsing code from sample JSON: ' Generate Parsing Code from JSON Dim kind As String = jResp.StringOf("kind") Dim targetLink As String = jResp.StringOf("targetLink") Dim status As String = jResp.StringOf("status") Dim user As String = jResp.StringOf("user") Dim insertTime As String = jResp.StringOf("insertTime") Dim operationType As String = jResp.StringOf("operationType") Dim name As String = jResp.StringOf("name") Dim targetId As String = jResp.StringOf("targetId") Dim selfLink As String = jResp.StringOf("selfLink") Dim targetProject As String = jResp.StringOf("targetProject") |
© 2000-2022 Chilkat Software, Inc. All Rights Reserved.