Chilkat HOME .NET Core C# Android™ AutoIt C C# C++ Chilkat2-Python CkPython Classic ASP DataFlex Delphi ActiveX Delphi DLL Go Java Lianja Mono C# Node.js Objective-C PHP ActiveX PHP Extension Perl PowerBuilder PowerShell PureBasic Ruby SQL Server Swift 2 Swift 3,4,5... Tcl Unicode C Unicode C++ VB.NET VBScript Visual Basic 6.0 Visual FoxPro Xojo Plugin
(VB.NET) Google Maps Geolocation RequestDemonstrates how make a Google Maps Geolocation REST API request.
' This example duplicates the following CURL request: ' curl -d @your_filename.json -H "Content-Type: application/json" -i "https://www.googleapis.com/geolocation/v1/geolocate?key=YOUR_API_KEY" ' This example requires the Chilkat API to have been previously unlocked. ' See Global Unlock Sample for sample code. Dim rest As New Chilkat.Rest ' Connect to the Google API REST server. Dim bTls As Boolean = True Dim port As Integer = 443 Dim bAutoReconnect As Boolean = True Dim success As Boolean = rest.Connect("www.googleapis.com",port,bTls,bAutoReconnect) ' Add the Content-Type request header. rest.AddHeader("Content-Type","application/json") ' Add your API key as a query parameter rest.AddQueryParam("key","YOUR_API_KEY") ' The JSON query is contained in the body of the HTTP POST. ' This is a sample query (which we'll dynamically build in this example) ' { ' "homeMobileCountryCode": 310, ' "homeMobileNetworkCode": 260, ' "radioType": "gsm", ' "carrier": "T-Mobile", ' "cellTowers": [ ' { ' "cellId": 39627456, ' "locationAreaCode": 40495, ' "mobileCountryCode": 310, ' "mobileNetworkCode": 260, ' "age": 0, ' "signalStrength": -95 ' } ' ], ' "wifiAccessPoints": [ ' { ' "macAddress": "01:23:45:67:89:AB", ' "signalStrength": 8, ' "age": 0, ' "signalToNoiseRatio": -65, ' "channel": 8 ' }, ' { ' "macAddress": "01:23:45:67:89:AC", ' "signalStrength": 4, ' "age": 0 ' } ' ] ' } Dim json As New Chilkat.JsonObject json.AppendInt("homeMobileCountryCode",310) json.AppendInt("homeMobileNetworkCode",260) json.AppendString("radioType","gsm") json.AppendString("carrier","T-Mobile") Dim aCellTowers As Chilkat.JsonArray = json.AppendArray("cellTowers") aCellTowers.AddObjectAt(0) Dim oCellTower As Chilkat.JsonObject = aCellTowers.ObjectAt(0) oCellTower.AppendInt("cellId",39627456) oCellTower.AppendInt("locationAreaCode",40495) oCellTower.AppendInt("mobileCountryCode",310) oCellTower.AppendInt("mobileNetworkCode",260) oCellTower.AppendInt("age",0) oCellTower.AppendInt("signalStrength",-95) Dim aWifi As Chilkat.JsonArray = json.AppendArray("wifiAccessPoints") aWifi.AddObjectAt(0) Dim oPoint As Chilkat.JsonObject = aWifi.ObjectAt(0) oPoint.AppendString("macAddress","01:23:45:67:89:AB") oPoint.AppendInt("signalStrength",8) oPoint.AppendInt("age",0) oPoint.AppendInt("signalToNoiseRatio",-65) oPoint.AppendInt("channel",8) aWifi.AddObjectAt(1) oPoint = aWifi.ObjectAt(1) oPoint.AppendString("macAddress","01:23:45:67:89:AC") oPoint.AppendInt("signalStrength",4) oPoint.AppendInt("age",0) Dim responseJson As String = rest.FullRequestString("POST","/geolocation/v1/geolocate",json.Emit()) If (rest.LastMethodSuccess <> True) Then Debug.WriteLine(rest.LastErrorText) Exit Sub End If ' When successful, the response code is 200. If (rest.ResponseStatusCode <> 200) Then ' Examine the request/response to see what happened. Debug.WriteLine("response status code = " & rest.ResponseStatusCode) Debug.WriteLine("response status text = " & rest.ResponseStatusText) Debug.WriteLine("response header: " & rest.ResponseHeader) Debug.WriteLine("response JSON: " & responseJson) Debug.WriteLine("---") Debug.WriteLine("LastRequestStartLine: " & rest.LastRequestStartLine) Debug.WriteLine("LastRequestHeader: " & rest.LastRequestHeader) Exit Sub End If json.EmitCompact = False Debug.WriteLine("JSON request body: " & json.Emit()) ' The JSON response should look like this: ' { ' "location": { ' "lat": 37.4248297, ' "lng": -122.07346549999998 ' }, ' "accuracy": 1145.0 ' } Debug.WriteLine("JSON response: " & responseJson) Dim jsonResp As New Chilkat.JsonObject jsonResp.Load(responseJson) Dim jsonLoc As Chilkat.JsonObject = jsonResp.ObjectOf("location") ' Any JSON value can be obtained as a string.. Dim latitude As String = jsonLoc.StringOf("lat") Debug.WriteLine("latitude = " & latitude) Dim longitude As String = jsonLoc.StringOf("lng") Debug.WriteLine("longitude = " & longitude) Dim accuracy As String = jsonResp.StringOf("accuracy") Debug.WriteLine("accuracy = " & accuracy) |
© 2000-2024 Chilkat Software, Inc. All Rights Reserved.