![]() |
Chilkat HOME Android™ AutoIt C C# C++ Chilkat2-Python CkPython Classic ASP DataFlex Delphi DLL Go Java JavaScript Node.js Objective-C PHP Extension Perl PowerBuilder PowerShell PureBasic Ruby SQL Server Swift Tcl Unicode C Unicode C++ VB.NET VBScript Visual Basic 6.0 Visual FoxPro Xojo Plugin
(AutoIt) curl with Variable Substitution in a GraphQL Request BodySee more CURL ExamplesThis example shows how to use variables inside agraphql request body using the {{variable_name}} syntax. When the HTTP request’s Content-Type indicates graphql, Chilkat automatically applies proper escaping to each substituted value, ensuring the resulting graphql remains valid.Note: This example requires Chilkat v11.5.0 or greater.
Local $bSuccess = False $bSuccess = False ; Variable names are enclosed between {{ and }} ; Important: Variables should be placed inside the quotes. ; curl -X POST https://api.example.com/graphql \ ; -H "Content-Type: application/graphql; charset=utf-8" \ ; -H "Accept: application/json" \ ; --data-binary "mutation { ; createUser( ; input: { ; name: \"{{name}}\" ; city: \"{{city}}\" ; note: \"{{note}}\" ; bio: \"{{bio}}\" ; } ; ) { ; id ; name ; } ; }" ; Build the above curl command. $oSbCurl = ObjCreate("Chilkat.StringBuilder") $oSbCurl.AppendLn("curl -X POST https://api.example.com/graphql \") $oSbCurl.AppendLn(" -H ""Content-Type: application/graphql; charset=utf-8"" \") $oSbCurl.AppendLn(" -H ""Accept: application/json"" \") $oSbCurl.AppendLn(" -d ""mutation {") $oSbCurl.AppendLn(" createUser(") $oSbCurl.AppendLn(" input: {") $oSbCurl.AppendLn(" name: \""{{name}}\""") $oSbCurl.AppendLn(" city: \""{{city}}\""") $oSbCurl.AppendLn(" note: \""{{note}}\""") $oSbCurl.AppendLn(" bio: \""{{bio}}\""") $oSbCurl.AppendLn(" }") $oSbCurl.AppendLn(" ) {") $oSbCurl.AppendLn(" id") $oSbCurl.AppendLn(" name") $oSbCurl.AppendLn(" }") $oSbCurl.AppendLn("}""") $oCurl = ObjCreate("Chilkat.HttpCurl") ; Provide values for variables $oCurl.SetVar "name","José O'Connor" $oCurl.SetVar "city","München" $oCurl.SetVar "note","He said ""Hello, world!"" — and left…" $oCurl.SetVar "bio","Loves sushi, café visits, and π ≈ 3.14159" ; To demonstrate how the variables are replaced, this example does not execute the curl command. ; Instead, it generates the raw HTTP request that would be sent if the curl command were run. $oSbRawRequest = ObjCreate("Chilkat.StringBuilder") $bSuccess = $oCurl.ToRawRequest($oSbCurl.GetAsString(),$oSbRawRequest) If ($bSuccess = False) Then ConsoleWrite($oCurl.LastErrorText & @CRLF) Exit EndIf ConsoleWrite($oSbRawRequest.GetAsString() & @CRLF) ; The output is shown below. ; Notice the quote chars around "Hello, world!" are properly escaped. ; POST /graphql HTTP/1.1 ; Accept: application/json ; Host: api.example.com ; Content-Type: application/graphql; charset=utf-8 ; Content-Length: 250 ; ; mutation { ; createUser( ; input: { ; name: "José O'Connor" ; city: "München" ; note: "He said \"Hello, world!\" — and left…" ; bio: "Loves sushi, café visits, and π ≈ 3.14159" ; } ; ) { ; id ; name ; } ; } |
||||
© 2000-2026 Chilkat Software, Inc. All Rights Reserved.