Sample code for 30+ languages & platforms
DataFlex

Transition from Http.PostJson to Http.HttpStr

Provides instructions for replacing deprecated PostJson method calls with HttpStr.

Chilkat DataFlex Downloads

DataFlex
Use ChilkatAx-win32.pkg

Procedure Test
    Boolean iSuccess
    Handle hoHttp
    String sUrl
    String sJsonText
    Variant vResponseObj
    Handle hoResponseObj
    Variant vResponseOut
    Handle hoResponseOut
    String sTemp1
    Boolean bTemp1

    Move False To iSuccess

    Get Create (RefClass(cComChilkatHttp)) To hoHttp
    If (Not(IsComObjectCreated(hoHttp))) Begin
        Send CreateComObject of hoHttp
    End

    Move "https://example.com/something" To sUrl
    Move "{ ... }" To sJsonText

    // ------------------------------------------------------------------------
    // The PostJson method is deprecated:

    Get ComPostJson Of hoHttp sUrl sJsonText To vResponseObj
    If (IsComObject(vResponseObj)) Begin
        Get Create (RefClass(cComChilkatHttpResponse)) To hoResponseObj
        Set pvComObject Of hoResponseObj To vResponseObj
    End
    Get ComLastMethodSuccess Of hoHttp To bTemp1
    If (bTemp1 = False) Begin
        Get ComLastErrorText Of hoHttp To sTemp1
        Showln sTemp1
        Procedure_Return
    End

    // ...
    // ...

    Send Destroy of hoResponseObj

    // ------------------------------------------------------------------------
    // Do the equivalent using HttpStr.
    // Your application creates a new, empty HttpResponse object which is passed 
    // in the last argument and filled upon success.

    Get Create (RefClass(cComChilkatHttpResponse)) To hoResponseOut
    If (Not(IsComObjectCreated(hoResponseOut))) Begin
        Send CreateComObject of hoResponseOut
    End
    Get pvComObject of hoResponseOut to vResponseOut
    Get ComHttpStr Of hoHttp "POST" sUrl sJsonText "utf-8" "application/json" vResponseOut To iSuccess
    If (iSuccess = False) Begin
        Get ComLastErrorText Of hoHttp To sTemp1
        Showln sTemp1
        Procedure_Return
    End



End_Procedure