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
(Classic ASP) Google Maps Geolocation RequestDemonstrates how make a Google Maps Geolocation REST API request.
<html> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> </head> <body> <% ' 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. ' For versions of Chilkat < 10.0.0, use CreateObject("Chilkat_9_5_0.Rest") set rest = Server.CreateObject("Chilkat.Rest") ' Connect to the Google API REST server. bTls = 1 port = 443 bAutoReconnect = 1 success = rest.Connect("www.googleapis.com",port,bTls,bAutoReconnect) ' Add the Content-Type request header. success = rest.AddHeader("Content-Type","application/json") ' Add your API key as a query parameter success = 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 ' } ' ] ' } ' For versions of Chilkat < 10.0.0, use CreateObject("Chilkat_9_5_0.JsonObject") set json = Server.CreateObject("Chilkat.JsonObject") success = json.AppendInt("homeMobileCountryCode",310) success = json.AppendInt("homeMobileNetworkCode",260) success = json.AppendString("radioType","gsm") success = json.AppendString("carrier","T-Mobile") ' aCellTowers is a Chilkat.JsonArray Set aCellTowers = json.AppendArray("cellTowers") success = aCellTowers.AddObjectAt(0) ' oCellTower is a Chilkat.JsonObject Set oCellTower = aCellTowers.ObjectAt(0) success = oCellTower.AppendInt("cellId",39627456) success = oCellTower.AppendInt("locationAreaCode",40495) success = oCellTower.AppendInt("mobileCountryCode",310) success = oCellTower.AppendInt("mobileNetworkCode",260) success = oCellTower.AppendInt("age",0) success = oCellTower.AppendInt("signalStrength",-95) ' aWifi is a Chilkat.JsonArray Set aWifi = json.AppendArray("wifiAccessPoints") success = aWifi.AddObjectAt(0) ' oPoint is a Chilkat.JsonObject Set oPoint = aWifi.ObjectAt(0) success = oPoint.AppendString("macAddress","01:23:45:67:89:AB") success = oPoint.AppendInt("signalStrength",8) success = oPoint.AppendInt("age",0) success = oPoint.AppendInt("signalToNoiseRatio",-65) success = oPoint.AppendInt("channel",8) success = aWifi.AddObjectAt(1) ' oPoint is a Chilkat.JsonObject Set oPoint = aWifi.ObjectAt(1) success = oPoint.AppendString("macAddress","01:23:45:67:89:AC") success = oPoint.AppendInt("signalStrength",4) success = oPoint.AppendInt("age",0) responseJson = rest.FullRequestString("POST","/geolocation/v1/geolocate",json.Emit()) If (rest.LastMethodSuccess <> 1) Then Response.Write "<pre>" & Server.HTMLEncode( rest.LastErrorText) & "</pre>" Response.End End If ' When successful, the response code is 200. If (rest.ResponseStatusCode <> 200) Then ' Examine the request/response to see what happened. Response.Write "<pre>" & Server.HTMLEncode( "response status code = " & rest.ResponseStatusCode) & "</pre>" Response.Write "<pre>" & Server.HTMLEncode( "response status text = " & rest.ResponseStatusText) & "</pre>" Response.Write "<pre>" & Server.HTMLEncode( "response header: " & rest.ResponseHeader) & "</pre>" Response.Write "<pre>" & Server.HTMLEncode( "response JSON: " & responseJson) & "</pre>" Response.Write "<pre>" & Server.HTMLEncode( "---") & "</pre>" Response.Write "<pre>" & Server.HTMLEncode( "LastRequestStartLine: " & rest.LastRequestStartLine) & "</pre>" Response.Write "<pre>" & Server.HTMLEncode( "LastRequestHeader: " & rest.LastRequestHeader) & "</pre>" Response.End End If json.EmitCompact = 0 Response.Write "<pre>" & Server.HTMLEncode( "JSON request body: " & json.Emit()) & "</pre>" ' The JSON response should look like this: ' { ' "location": { ' "lat": 37.4248297, ' "lng": -122.07346549999998 ' }, ' "accuracy": 1145.0 ' } Response.Write "<pre>" & Server.HTMLEncode( "JSON response: " & responseJson) & "</pre>" ' For versions of Chilkat < 10.0.0, use CreateObject("Chilkat_9_5_0.JsonObject") set jsonResp = Server.CreateObject("Chilkat.JsonObject") success = jsonResp.Load(responseJson) ' jsonLoc is a Chilkat.JsonObject Set jsonLoc = jsonResp.ObjectOf("location") ' Any JSON value can be obtained as a string.. latitude = jsonLoc.StringOf("lat") Response.Write "<pre>" & Server.HTMLEncode( "latitude = " & latitude) & "</pre>" longitude = jsonLoc.StringOf("lng") Response.Write "<pre>" & Server.HTMLEncode( "longitude = " & longitude) & "</pre>" accuracy = jsonResp.StringOf("accuracy") Response.Write "<pre>" & Server.HTMLEncode( "accuracy = " & accuracy) & "</pre>" %> </body> </html> |
© 2000-2024 Chilkat Software, Inc. All Rights Reserved.