Sample code for 30+ languages & platforms
PureBasic

Transition from Http.PFile to Http.HttpFile

Provides instructions for replacing deprecated PFile method calls with HttpFile.

Chilkat PureBasic Downloads

PureBasic
IncludeFile "CkHttpResponse.pb"
IncludeFile "CkHttp.pb"

Procedure ChilkatExample()

    success.i = 0

    http.i = CkHttp::ckCreate()
    If http.i = 0
        Debug "Failed to create object."
        ProcedureReturn
    EndIf

    verb.s = "POST"
    url.s = "https://example.com/"
    localFilePath.s = "c:/temp/requestBodyContent.dat"
    contentType.s = "application/octet-stream"

    ; ------------------------------------------------------------------------
    ; The PFile method is deprecated:

    responseObj.i = CkHttp::ckPFile(http,verb,url,localFilePath,contentType,0,0)
    If CkHttp::ckLastMethodSuccess(http) = 0
        Debug CkHttp::ckLastErrorText(http)
        CkHttp::ckDispose(http)
        ProcedureReturn
    EndIf

    ; ...
    ; ...

    CkHttpResponse::ckDispose(responseObj)

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

    responseOut.i = CkHttpResponse::ckCreate()
    If responseOut.i = 0
        Debug "Failed to create object."
        ProcedureReturn
    EndIf

    success = CkHttp::ckHttpFile(http,verb,url,localFilePath,contentType,responseOut)
    If success = 0
        Debug CkHttp::ckLastErrorText(http)
        CkHttp::ckDispose(http)
        CkHttpResponse::ckDispose(responseOut)
        ProcedureReturn
    EndIf



    CkHttp::ckDispose(http)
    CkHttpResponse::ckDispose(responseOut)


    ProcedureReturn
EndProcedure