Hello everyone, I am having trouble with a canvas app I need to implement.
I want to implement the following functionality:
1. Canvas app that is embedded inside Dynamics 365 model driven app, which retrieves some files from azure blob storage and downloads them.
2. I can only use Microsoft Entra ID authentication in my app for authenticating Azure Blob Storage, and I say this because the connector for Azure Blob Storage has some limitations, and one in particular is that I cannot use AzureBlobStorage.CreateShareLinkByPath(), which is exactly what I needed but is not possible.
What I am currently trying is to also connect a flow that runs when I click a button on the app, in the flow I am making HTTP call using azure blob storage API, and I actually get the file content I need in the flow, as shown in the screen shot below:
The file is in the filecontent variable which I am returning to the canvas app.
The string is actually huge I am only inputting the start of it.
After I return this is my app, I was trying to download it:
1. I tried Set(downloadLink, "data:application/octet-stream;base64," & filecontent), and then Launch(downloadLink)
2. I also tried Launching the filecontent as it is.
I also tried the Download function as well, but I got an error saying Invalid URL.
What I have noticed is that the filecontent variable that is returned from my flow, is nothing like the string I get when checking the flowruns (as shown in the screenshot above)
What I get in the canvas app is this:
First, validate that the Base64 string you're getting is correct. You can search for "Base64 to file" on Bing, then paste the entire Base64 string to check if it converts properly.
If the file is very large, it's better to use Power Automate "Create file" action, and then use SharePoint actions to download the file.
If I have answered your question, please mark it as the Answered. If you like my response, please give it a Like.
Regards,
Srini
Under review
Thank you for your reply! To ensure a great experience for everyone, your content is awaiting approval by our Community Managers. Please check back later.