DataFlex
DataFlex
OneDrive -- Download Binary File to Memory
See more OneDrive Examples
Downloads a binary file (such as JPG, PDF, etc.) into a BinData object.Note: This example requires Chilkat v9.5.0.97 or greater.
Chilkat DataFlex Downloads
Use ChilkatAx-win32.pkg
Procedure Test
Boolean iSuccess
Handle hoJson
Handle hoHttp
Variant vFileData
Handle hoFileData
String sUrl
String sTemp1
Integer iTemp1
Boolean bTemp1
Move False To iSuccess
// This example requires the Chilkat API to have been previously unlocked.
// See Global Unlock Sample for sample code.
// Use your client ID, client secret, and tenant ID in the following lines
Get Create (RefClass(cComChilkatJsonObject)) To hoJson
If (Not(IsComObjectCreated(hoJson))) Begin
Send CreateComObject of hoJson
End
Get ComUpdateString Of hoJson "client_id" "2871da2c-8176-4b7f-869b-2311aa82e743" To iSuccess
Get ComUpdateString Of hoJson "client_secret" "2hu9Q~r5QuryUcEkNbg1btLtnfU1VUXzhSCG6brH" To iSuccess
Get ComUpdateString Of hoJson "scope" "https://graph.microsoft.com/.default" To iSuccess
Get ComUpdateString Of hoJson "token_endpoint" "https://login.microsoftonline.com/114d7ed6-71bf-4dbe-a866-748364121bf2/oauth2/v2.0/token" To iSuccess
Get Create (RefClass(cComChilkatHttp)) To hoHttp
If (Not(IsComObjectCreated(hoHttp))) Begin
Send CreateComObject of hoHttp
End
Get ComEmit Of hoJson To sTemp1
Set ComAuthToken Of hoHttp To sTemp1
// Sends the following GET request:
// GET https://graph.microsoft.com/v1.0/users/{user-id}/drive/root:/{item-path}:/content
// Make sure to automatically follow redirects
Set ComFollowRedirects Of hoHttp To True
// This example will download /Misc/starfish.jpg
Get ComSetUrlVar Of hoHttp "item_path" "Misc/starfish.jpg" To iSuccess
Get ComSetUrlVar Of hoHttp "user_id" "4fe732c3-322e-4a6b-b729-2fd1eb5c6104" To iSuccess
Get Create (RefClass(cComChilkatBinData)) To hoFileData
If (Not(IsComObjectCreated(hoFileData))) Begin
Send CreateComObject of hoFileData
End
Move "https://graph.microsoft.com/v1.0/users/{$user_id}/drive/root:/{$item_path}:/content" To sUrl
Get pvComObject of hoFileData to vFileData
Get ComDownloadBd Of hoHttp sUrl vFileData To iSuccess
Get ComLastMethodSuccess Of hoHttp To bTemp1
If (bTemp1 <> True) Begin
Get ComLastErrorText Of hoHttp To sTemp1
Showln sTemp1
Procedure_Return
End
// If the response status code was not 200, then it failed.
Get ComLastStatus Of hoHttp To iTemp1
If (iTemp1 <> 200) Begin
Get ComLastStatus Of hoHttp To iTemp1
Showln "Response Status Code = " iTemp1
Showln "Failed."
Procedure_Return
End
// If we got here, then the file was successfully downloaded.
Showln "Download binary from OneDrive successful."
Showln "The file is contained in fileData."
End_Procedure