AutoIt
AutoIt
ChartURL - Create a Signed URL
See more HTTP Misc Examples
Demonstrates how to create a signed URL for ChartURL.Chilkat AutoIt Downloads
; This example assumes the Chilkat API to have been previously unlocked.
; See Global Unlock Sample for sample code.
$oCrypt = ObjCreate("Chilkat.Crypt2")
; Example key: "dek-d7a46236eda961a6c3c18ffcc6b077ba87d27e9ae85f7842c6d427c265dd5f69d5131308d93332353d4a55a4b1160fcf516515a4a9f0aa50fbf2d7a2e7d0f1c5"
Local $sKey = "charturl-sign-encrypt-key"
; Example token: "dt-RwYN"
Local $sToken = "charturl-token"
Local $slug = "weekly-activity"
Local $sData = "{ ""options"": {""data"": {""columns"": [[""This Week"",10,13],[""Last Week"",9,5]]}}}"
$oCrypt.HashAlgorithm = "SHA256"
$oCrypt.MacAlgorithm = "HMAC"
$oCrypt.SetMacKeyString($sKey)
$oCrypt.EncodingMode = "base64"
$oJson = ObjCreate("Chilkat.JsonObject")
$oJson.Load($sData)
ConsoleWrite("json = " & $oJson.Emit() & @CRLF)
Local $sig = $oCrypt.MacStringENC($oJson.Emit())
$oSbUrl = ObjCreate("Chilkat.StringBuilder")
$oSbUrl.Append("https://charturl.com/i/")
$oSbUrl.Append($sToken)
$oSbUrl.Append("/")
$oSbUrl.Append($slug)
$oSbUrl.Append("?d=")
$oSbUrl.Append($oCrypt.EncodeString($oJson.Emit(),"utf-8","url"))
$oSbUrl.Append("&s=")
$oSbUrl.Append($oCrypt.EncodeString($sig,"utf-8","url"))
ConsoleWrite("Signed URL: " & $oSbUrl.GetAsString() & @CRLF)