Changes for page Base64 decoding
Last modified by Danniar Firdausy on 2024/09/17 21:20
From version 16.1
edited by Eva Torken
on 2023/08/10 15:44
on 2023/08/10 15:44
Change comment:
There is no comment for this version
Summary
-
Page properties (4 modified, 0 added, 0 removed)
Details
- Page properties
-
- Title
-
... ... @@ -1,1 +1,1 @@ 1 - Base641 +intermediate-data-handling-base64-decoding - Author
-
... ... @@ -1,1 +1,1 @@ 1 -XWiki. etorken1 +XWiki.marijn - Default language
-
... ... @@ -1,1 +1,0 @@ 1 -en - Content
-
... ... @@ -1,11 +1,20 @@ 1 -{{ container}}2 - {{containerlayoutStyle="columns"}}3 - (((1 +{{html wiki="true"}} 2 +<div class="ez-academy"> 3 + <div class="ez-academy_body"> 4 4 5 +<div class="doc"> 6 + 7 + 8 + 9 += Base64 decoding = 10 + 5 5 Most of the time, you can use the standard tooling of eMagiz to manipulate the data so that it makes sense for the (external) party that receives the data. However, sometimes there are cases in which you need a little bit of extra complexity. This microlearning will explain one of those more complex scenarios. In this microlearning, we will learn how to use base64 decoding on your (input) message. This functionality is beneficial when the message is encoded, but you need to manipulate part of the data. 6 6 7 -Should you have any questions, please get in touch with [[academy@emagiz.com>>mailto:academy@emagiz.com]].13 +Should you have any questions, please get in touch with academy@emagiz.com. 8 8 15 +* Last update: August 26th, 2021 16 +* Required reading time: 5 minutes 17 + 9 9 == 1. Prerequisites == 10 10 11 11 * Basic knowledge of the eMagiz platform ... ... @@ -22,6 +22,8 @@ 22 22 * The component in eMagiz needs a base64 encoded string as input 23 23 * Multiple times encoding and decoding in the same integration is **not** advisable 24 24 34 + 35 + 25 25 == 3. Base64 decoding == 26 26 27 27 Most of the time, you can use the standard tooling of eMagiz to manipulate the data so that it makes sense for the (external) party that receives the data. However, sometimes there are cases in which you need a little bit of extra complexity. This microlearning will explain one of those more complex scenarios. In this microlearning, we will learn how to use base64 decoding on your (input) message. This functionality is beneficial when the message is encoded, but you need to manipulate part of the data. ... ... @@ -33,7 +33,7 @@ 33 33 * The component in eMagiz needs a base64 encoded string as input 34 34 * Multiple times encoding and decoding in the same integration is **not** advisable 35 35 36 -The Base64 decode algorithm converts plain text into original data. Technically, it can be said that it converts six-bit bytes into eight-bit bytes. So when you have the base64 string of QUJD, you could manually convert this to a readable format. You can find an excellent explanation of how it works [ [here>>https://base64.guru/learn/base64-algorithm/decode||target="blank"]]. Luckily for us, eMagiz will do all the heavy lifting, and we do not have to take out pen and paper.47 +The Base64 decode algorithm converts plain text into original data. Technically, it can be said that it converts six-bit bytes into eight-bit bytes. So when you have the base64 string of QUJD, you could manually convert this to a readable format. You can find an excellent explanation of how it works [here](https://base64.guru/learn/base64-algorithm/decode). Luckily for us, eMagiz will do all the heavy lifting, and we do not have to take out pen and paper. 37 37 38 38 In the remainder of this microlearning, we will look at how you could implement this logic within the eMagiz tooling. 39 39 ... ... @@ -43,7 +43,7 @@ 43 43 44 44 First, we need to navigate to the Create phase of eMagiz and open the flow in which we want to add this logic. Once you have opened your flow, you need to enter "Start editing" mode. This mode allows you to change the flow in question and add the logic to the transformation within the flow. When you have done so, it becomes time to add the base64 decode component to the flow. 45 45 46 - [[image:Main.Images.Microlearning.WebHome@intermediate-data-handling-base64-decode--component.png]]57 +<p align="center">[[image:intermediate-data-handling-base64-decode--component.png||]]</p> 47 47 48 48 At the component level, you need to define the input and output channel. Afterward, you need to determine if your output will be bytes or string (on the Advanced tab). If you want to transform the content of the base64 encoded string via the tooling, the string option will make more sense. However, that option also uses up more memory. So depending on your use case, you should consider the whole dynamic when making your choice. 49 49 ... ... @@ -51,8 +51,15 @@ 51 51 52 52 Now that we know how to implement it, we can quickly look at possible use cases for this logic. We see this logic popping up mainly when dealing with attachments/files (i.e., pictures, pdf) within XML messages. 53 53 54 -== 4. Key takeaways==65 +===== Practice ===== 55 55 67 +== 4. Assignment == 68 + 69 +Look for places where you could use this logic to aid your integration process within your (Academy) project. 70 +This assignment can be completed with the help of your (Academy) project you have created/used in the previous assignment. 71 + 72 +== 5. Key takeaways == 73 + 56 56 Essential characteristics of this functionality are: 57 57 58 58 * Decoding (and encoding) of base64 strings take up additional memory (up to 33%) ... ... @@ -60,13 +60,24 @@ 60 60 * The component in eMagiz needs a base64 encoded string as input 61 61 * Multiple times encoding and decoding in the same integration is **not** advisable 62 62 63 -== 5. Suggested Additional Readings == 64 64 82 + 83 +== 6. Suggested Additional Readings == 84 + 65 65 If you are interested in this topic and want more information, please read the help text provided by eMagiz and the following links: 66 66 67 -* [[Decode Algorithm>>https://base64.guru/learn/base64-algorithm/decode||target="blank"]] 68 -* [[Decode Online>>https://www.base64decode.org/||target="blank"]] 69 -))) 87 +* https://base64.guru/learn/base64-algorithm/decode 88 +* https://www.base64decode.org/ 70 70 71 -((({{toc/}}))){{/container}} 72 -{{/container}} 90 +== 7. Silent demonstration video == 91 + 92 +This video demonstrates how you could have handled the assignment and gives you some context on what you have just learned. 93 + 94 +<iframe width="1280" height="720" src="../../vid/microlearning/intermediate-data-handling-base64-decode.mp4" frameborder="0" allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture" allowfullscreen></iframe> 95 + 96 +</div> 97 + 98 +</div> 99 +</div> 100 + 101 +{{/html}}