PureBasic
PureBasic
Duplicate curl POST with JSON Body
See more REST Examples
Demonstrates how to duplicate the following curl command, which sends a POST w/ a JSON body.curl -H "Content-Type: application/json" -i https://my-store.com/wp-json/wc/v2/products/batch?consumer_key=YOUR_CONSUMER_KEY&consumer_secret=YOUR_CONSUMER_SECRET -d @test_product.txt
Chilkat PureBasic Downloads
IncludeFile "CkRest.pb"
IncludeFile "CkStringBuilder.pb"
Procedure ChilkatExample()
success.i = 0
; This example assumes the Chilkat API to have been previously unlocked.
; See Global Unlock Sample for sample code.
rest.i = CkRest::ckCreate()
If rest.i = 0
Debug "Failed to create object."
ProcedureReturn
EndIf
; Connect using TLS.
bAutoReconnect.i = 1
success = CkRest::ckConnect(rest,"my-store.com",443,1,bAutoReconnect)
; test_product.txt contains this string:
sbJson.i = CkStringBuilder::ckCreate()
If sbJson.i = 0
Debug "Failed to create object."
ProcedureReturn
EndIf
CkStringBuilder::ckAppend(sbJson,"{" + Chr(34) + "create" + Chr(34) + ": [{" + Chr(34) + "name" + Chr(34) + ": " + Chr(34) + "Woo Single #1" + Chr(34) + "," + Chr(34) + "type" + Chr(34) + ": " + Chr(34) + "simple" + Chr(34) + "," + Chr(34) + "regular_price" + Chr(34) + ": " + Chr(34) + "21.99" + Chr(34) + "}]}")
; Add query parameters
; Add the Content-Type HTTP request header.
success = CkRest::ckAddHeader(rest,"Content-Type","application/json")
jsonResponseStr.s = CkRest::ckFullRequestString(rest,"POST","/wp-json/wc/v2/products/batch?consumer_key=YOUR_CONSUMER_KEY&consumer_secret=YOUR_CONSUMER_SECRET",CkStringBuilder::ckGetAsString(sbJson))
If CkRest::ckLastMethodSuccess(rest) <> 1
Debug CkRest::ckLastErrorText(rest)
CkRest::ckDispose(rest)
CkStringBuilder::ckDispose(sbJson)
ProcedureReturn
EndIf
; Show the JSON response. (See below for a sample JSON response.)
Debug "Json Response: " + jsonResponseStr
CkRest::ckDispose(rest)
CkStringBuilder::ckDispose(sbJson)
ProcedureReturn
EndProcedure