PureBasic
PureBasic
Box.com Download Binary File to Memory
See more Box Examples
Retrieves the actual data of the file into a memory (not to a local file).Chilkat PureBasic Downloads
IncludeFile "CkBinData.pb"
IncludeFile "CkHttp.pb"
Procedure ChilkatExample()
success.i = 0
; This requires the Chilkat API to have been previously unlocked.
; See Global Unlock Sample for sample code.
http.i = CkHttp::ckCreate()
If http.i = 0
Debug "Failed to create object."
ProcedureReturn
EndIf
CkHttp::setCkKeepResponseBody(http, 1)
; Provide a previously obtained OAuth2 access token.
; See Get Box OAuth2 Access Token.
CkHttp::setCkAuthToken(http, "BOX_ACCESS_TOKEN")
CkHttp::setCkFollowRedirects(http, 1)
; The file is specified by the file ID.
; In this case, we're downloading a file with FILE_ID = 283371752129.
; The general form of the URL for downloading is: https://api.box.com/2.0/files/FILE_ID/content
bd.i = CkBinData::ckCreate()
If bd.i = 0
Debug "Failed to create object."
ProcedureReturn
EndIf
success = CkHttp::ckDownloadBd(http,"https://api.box.com/2.0/files/283371752129/content",bd)
statusCode.i = CkHttp::ckLastStatus(http)
If success = 0
If statusCode = 0
; Unable to either send the request or get the response.
Debug CkHttp::ckLastErrorText(http)
Else
; We got a response, but the status code was not in the 200s
Debug "Response status code: " + Str(statusCode)
; Examine the response body.
Debug "Response body:"
Debug CkHttp::ckLastResponseBody(http)
EndIf
Debug "Download failed."
Else
Debug "Downloaded tigers.jpeg into an object holding the binary data."
Debug "Number of bytes: " + Str(CkBinData::ckNumBytes(bd))
EndIf
CkHttp::ckDispose(http)
CkBinData::ckDispose(bd)
ProcedureReturn
EndProcedure