DataFlex
DataFlex
QR Code Generator via api.qrserver.com REST API
See more HTTP Examples
Demonstrates how to generate a QR code using the api.qrserver.com REST API service.Chilkat DataFlex Downloads
Use ChilkatAx-win32.pkg
Procedure Test
Boolean iSuccess
Handle hoHttp
Variant vQueryParams
Handle hoQueryParams
Variant vResp
Handle hoResp
Variant vBd
Handle hoBd
String sTemp1
Integer iTemp1
Move False To iSuccess
// This example requires the Chilkat API to have been previously unlocked.
// See Global Unlock Sample for sample code.
Get Create (RefClass(cComChilkatHttp)) To hoHttp
If (Not(IsComObjectCreated(hoHttp))) Begin
Send CreateComObject of hoHttp
End
// Send the following GET request to get a binary response.
// The body of the binary response contains the image data for the QR code.
// https://api.qrserver.com/v1/create-qr-code/?data=[URL-encoded-text]&size=[pixels]x[pixels]
Get Create (RefClass(cComChilkatJsonObject)) To hoQueryParams
If (Not(IsComObjectCreated(hoQueryParams))) Begin
Send CreateComObject of hoQueryParams
End
Get ComUpdateString Of hoQueryParams "data" "Hello World" To iSuccess
Get ComUpdateString Of hoQueryParams "size" "100x100" To iSuccess
// Get a PNG file..
// Possible formats are:
// png
// gif
// jpeg
// jpg
// svg
// eps
// Case matters. Use lowercase.
Get ComUpdateString Of hoQueryParams "format" "png" To iSuccess
// Send the GET request to an endpoint.
// Chilkat will add the url-encoded query params passed in the JSON.
Get Create (RefClass(cComChilkatHttpResponse)) To hoResp
If (Not(IsComObjectCreated(hoResp))) Begin
Send CreateComObject of hoResp
End
Get pvComObject of hoQueryParams to vQueryParams
Get pvComObject of hoResp to vResp
Get ComHttpParams Of hoHttp "GET" "https://api.qrserver.com/v1/create-qr-code/" vQueryParams vResp To iSuccess
If (iSuccess = False) Begin
Get ComLastErrorText Of hoHttp To sTemp1
Showln sTemp1
Procedure_Return
End
// Did it succeed?
Get ComStatusCode Of hoResp To iTemp1
If (iTemp1 <> 200) Begin
// The response body, if anything, would not be the image data, but would likely be the error text (or HTML, or whatever...)
Get ComBodyStr Of hoResp To sTemp1
Showln sTemp1
Get ComStatusCode Of hoResp To iTemp1
Showln "Response status = " iTemp1
Showln "Failed."
Procedure_Return
End
// Success if we get here..
// Save the binary body as the PNG file, or you can get the bytes of the PNG..
Get ComSaveBodyBinary Of hoResp "c:/temp/qa_output/qr_code.png" To iSuccess
// Or get the bytes:
Get Create (RefClass(cComChilkatBinData)) To hoBd
If (Not(IsComObjectCreated(hoBd))) Begin
Send CreateComObject of hoBd
End
Get pvComObject of hoBd to vBd
Get ComGetBodyBd Of hoResp vBd To iSuccess
// Use the bytes in bd...
// See the online reference documentation for the function to access the bytes directly.
Showln "Success."
End_Procedure