PureBasic
PureBasic
Transition from Http.SynchronousRequest to Http.HttpSReq
Provides instructions for replacing deprecated SynchronousRequest method calls with HttpSReq.Chilkat PureBasic Downloads
IncludeFile "CkHttpResponse.pb"
IncludeFile "CkHttp.pb"
IncludeFile "CkHttpRequest.pb"
Procedure ChilkatExample()
success.i = 0
http.i = CkHttp::ckCreate()
If http.i = 0
Debug "Failed to create object."
ProcedureReturn
EndIf
domain.s = "example.com"
port.i = 443
tls.i = 1
req.i = CkHttpRequest::ckCreate()
If req.i = 0
Debug "Failed to create object."
ProcedureReturn
EndIf
CkHttpRequest::setCkHttpVerb(req, "POST")
CkHttpRequest::setCkPath(req, "/some/path")
CkHttpRequest::setCkContentType(req, "application/x-www-form-urlencoded")
CkHttpRequest::ckAddParam(req,"firstName","Matt")
CkHttpRequest::ckAddParam(req,"lastName","Smith")
; ------------------------------------------------------------------------
; The SynchronousRequest method is deprecated:
responseObj.i = CkHttp::ckSynchronousRequest(http,domain,port,tls,req)
If CkHttp::ckLastMethodSuccess(http) = 0
Debug CkHttp::ckLastErrorText(http)
CkHttp::ckDispose(http)
CkHttpRequest::ckDispose(req)
ProcedureReturn
EndIf
; ...
; ...
CkHttpResponse::ckDispose(responseObj)
; ------------------------------------------------------------------------
; Do the equivalent using HttpSReq.
; 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::ckHttpSReq(http,domain,port,tls,req,responseOut)
If success = 0
Debug CkHttp::ckLastErrorText(http)
CkHttp::ckDispose(http)
CkHttpRequest::ckDispose(req)
CkHttpResponse::ckDispose(responseOut)
ProcedureReturn
EndIf
CkHttp::ckDispose(http)
CkHttpRequest::ckDispose(req)
CkHttpResponse::ckDispose(responseOut)
ProcedureReturn
EndProcedure