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
(Swift 3,4,5...) Adobe Analytics Reporting API (1.4)Demonstrates a simple POST of JSON to the Adobe Analytics Reporting API (v1.4)
func chilkatTest() { // This requires the Chilkat API to have been previously unlocked. // See Global Unlock Sample for sample code. var success: Bool // In this example, replace "rsid" with your report suite id, and update the URL to use the correct endpoint var url: String? = "https://api.omniture.com/admin/1.4/rest/?method=Report.Queue" let json = CkoJsonObject()! json.update("reportDescription.reportSuiteID", value: "rsid") json.update("reportDescription.dateGranularity", value: "hour") let http = CkoHttp()! let dt = CkoDateTime()! dt.setFromCurrentSystemTime() var timecreated: String? = dt.getAsTimestamp(false) let prng = CkoPrng()! var nonce: String? = prng.genRandom(12, encoding: "hex") var secret: String? = "SECRET" let sb = CkoStringBuilder()! sb.append(nonce) sb.append(timecreated) sb.append(secret) let crypt = CkoCrypt2()! crypt.hashAlgorithm = "sha1" crypt.encodingMode = "base64" var digest: String? = crypt.hashStringENC(sb.getAsString()) let sbNonce = CkoStringBuilder()! sbNonce.append(nonce) sbNonce.encode("base64") sb.clear() sb.append("UsernameToken Username=\"USERNAME\", PasswordDigest=\"") sb.append(digest) sb.append("\", Nonce=\"") sb.append(sbNonce.getAsString()) sb.append("\", Created=\"") sb.append(timecreated) sb.append("\"") print("\(sb.getAsString()!)") http.setRequestHeader("X-WSSE", value: sb.getAsString()) var resp: CkoHttpResponse? = http.postJson2(url, contentType: "text/json", jsonText: json.emit()) if http.lastMethodSuccess != true { print("\(http.lastErrorText!)") return } print("Http Status code: \(resp!.statusCode.intValue)") print("JSON response:") print("\(resp!.bodyStr!)") resp = nil } |
© 2000-2024 Chilkat Software, Inc. All Rights Reserved.