Sample code for 30+ languages & platforms
DataFlex

Demonstrates the Http.QuickRequestParams Method

See more HTTP Examples

Demonstrates how to use the Http.QuickRequestParams method. This is where query params can be provided non-URL-encoded in JSON format.

Chilkat DataFlex Downloads

DataFlex
Use ChilkatAx-win32.pkg

Procedure Test
    Boolean iSuccess
    Handle hoHttp
    Variant vQueryParams
    Handle hoQueryParams
    String sSessionLogPath
    Variant vResp
    Handle hoResp
    Handle hoFac
    String sSessionLog
    String sTemp1

    Move False To iSuccess

    // This example assumes 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

    // Demonstrate sending a GET request with query parameters.
    Get Create (RefClass(cComChilkatJsonObject)) To hoQueryParams
    If (Not(IsComObjectCreated(hoQueryParams))) Begin
        Send CreateComObject of hoQueryParams
    End
    Get ComUpdateInt Of hoQueryParams "limit" 100 To iSuccess
    Get ComUpdateString Of hoQueryParams "email" "joe@example.com" To iSuccess
    Get ComUpdateString Of hoQueryParams "token" "VGhlIHF1aWNrIGJyb3duIGZveCBqdW1wZWQgb3ZlciB0aGUgbGF6eSBkb2cuLi4=" To iSuccess

    // Set a session log filename so we can examine the exact request that is sent.
    Move "qa_output/sessionLog.txt" To sSessionLogPath
    Set ComSessionLogFilename Of hoHttp To sSessionLogPath

    // Send the GET request to an endpoint.  We don't care about the response. The purpose of this example
    // is to see the exact HTTP request that is sent..
    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://www.chilkatsoft.com/echoPostBody.asp" vQueryParams vResp To iSuccess
    If (iSuccess = False) Begin
        Get ComLastErrorText Of hoHttp To sTemp1
        Showln sTemp1
        Procedure_Return
    End

    Get Create (RefClass(cComCkFileAccess)) To hoFac
    If (Not(IsComObjectCreated(hoFac))) Begin
        Send CreateComObject of hoFac
    End
    Get ComReadEntireTextFile Of hoFac sSessionLogPath "utf-8" To sSessionLog
    Showln sSessionLog
    Get ComFileDelete Of hoFac sSessionLogPath To iSuccess

    // This is the exact GET request that was sent.
    // Notice how each query parameter is URL encoded and added to the HTTP start line of the request.

    // GET /echoPostBody.asp?limit=100&email=joe%40example.com&token=VGhlIHF1aWNrIGJyb3duIGZveCBqdW1wZWQgb3ZlciB0aGUgbGF6eSBkb2cuLi4%3D HTTP/1.1
    // Host: www.chilkatsoft.com
    // Accept: */*
    // Accept-Encoding: gzip


End_Procedure