0

I am user NodeJS and Express to run a microservice. This microservice(ms1) make a request to another microservice(ms2) to get a file(XLSX). The problem here is, the response of ms2 is a byte stream. I want to read those byte stream response in node js and store it as a file(XLSX). I tried to convert the byte stream as a buffer, but the file got corrupted. The below byte stream I am getting in response :

��ࡱ�;�� ����������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������Root Entry��������
�EncryptedPackage"�������������*DataSpaces��������DataSpaceMap  ��������p����   

���������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������*�?N�d�a�Ҝ�S��#�~R��������#en�k��s�04���v�{�᣽A�+_��{���ʴIQ��j�'�K�QY+-� ��7�Ժ���������DE����Us�//)��uN��
ŭ����=]11X�b��bE��9�%�7
=�eX���)g;6ʓY��X�+*�:f6y^Єf6���c�R� �C��7/��-@J7b��1�0� �A#ŕ��Q�#�$sa�F}��Z��CV�hܑ��ݗ������
��.���ik���p�kSWm�0[Z��=��@���������A���Y�7
xk�]e:�S4�!�����-R���
���x�
��->�-�,gaXo�?8U6���$�"�V�W�[�z�d9���,  ��Ej\Ì(��i�R����H =`Q?�U�z1�W�u_g6:�̃GK��Ļ��j�N��{���,�E����Y,4�mF�V�(G6WPHw�1*��ɴ"���0�EH���º�h�1��s���T�=@��
��*u��m�x������$|�j�d5�{�����0��.ѕ-�.���
g���:��y݆J���6��n�f��b_t��h��UtS[8���i��#�����
��՞
z�g`X4c�MN��<ZLh±�^�#�~`��a]�s�S2�*����v3�*H�39�W���I�� ��bQ��R^�Q{u�   �.�y�0�N��K#d�"T�/8�aVtk���mDW�N�V�c�
�B������?�#��f�}/�v�����)`�K�ݨ
S�ɳe}^��Ni�5��8�g\{D�y5H�*�h��i�r�]�?�8�Ñ��?�$���w/��V��{I�7��k �yUn���Ĵ�U���ґ`�l�G,�����!�(yʚ=��9'e�@V�Hms�f�^��$^��`yx�a(�/�   |�U�֪h�^�O� ��.&Ȇgy���j
1hg�!�d�j�č�/T�����Z���S�y�A3�σc�XǾ
B�pbvc/��l޶n}����,^۔og  �����U��
���4�3
[pR)?�~�> �[1��0P�g:q�u
G��d3�En���h�ϟߏ?��Pfz��n�V�e���褀�Z���E�C�b�����v*��T�5>�L�|�8LƂ7s�R�T�ɹt0�N�dm�,O������ �"����T'^���M��<��_yD���>�#]ߏ����/7+�'iJ;G�-z���c3jju����'�(z[{�C�Wg��f�ڜb����-���
��:$v
��J��lUlѯi&9.�ehjy�B��
^j��c;'��3�O��߂�=0\s8*Z�;�S�N�k��nDz#B���@�i��=�nץ�H��Z�9�?�w�ֆ�m���4���h���O,b�ȬB�����X����b�<`%��®w����9O*�}<����t'���>Ö�)���T'��U�Qr�7���Q)��7:v�h#�/Q�!6^�yܤ�V�+i��T%�GS��͊�f#��'Ob
��!�*�Fk�!��MTM��O����m��6���t������_�.�U�OwA�#͞CHRt*mV�!,��!�֔���W�э[�?
����Cwu�i-���iqғ=m�%�`����p�G6�R��[-����[�ad#�Z tN0�7���������4
[$}"���?�}=tRw���4�Vnx�����2:�ܹ Hg}�T�G%{4v���RO@�bȨ�rNnV`�P*)`~��5G8I��F���7Wf
���6�iG᝙�|��[��vd�9 ��<����ph�ݏ`����
�S�87{>�    }��r1MC���W�}dD�������(@(�����7�����F�'B��I�`b��b�Z�
ңS6�+�[%8Hd��5I�ʾcOWdzuhoh@9�Ƙ��-�L���1H�0-�^&�a{t�X���*=��G��7 �dz�+��n�|̶�E<�Ʌ����D"9��c�3���-'���#l]t�~W/� ��]�$h���}��M�y�
a�B���_k�B�C�sc�!��mB濷��GK�/.�(����c����^c0��`�[i3-�Vwa�/�FZ� �&�IY��'��=mQ���lNb}�D"�����л��K�e������b�x}E�.�^S��ΒD{����y�7Nu³϶#�u���a���Z�O�
��x�$�
�yj�r�% ����w`�։Y$E��ۄT�~~H"/w��@�@9|�N:5�d��r��OFO�1/�X��u3O�`�T��yӻ
��"�tP)�'���� �z�r'
;�,ߡ�j�M�V�I��4wΗ9���Yx�l1��
RX���خ
y���{�an��W4��d��)��jj������G#�����\%.��3Qڥ�����K̾f�*TeG6{�6�Gy�����Yt��@�B�xo����!�J��ܞ1C�U�:k���lxe+�U�9�w��a�%J~Q
�'�م����:1��v�6��¿À��#8�ԎO[3�Yzkw<͓���V�
-dXAO���    A�JƬ7Q"D���k��0�$I�hN���:��17��ř3�_|N��7�a�b�sn��<LHMt�&��EQ�A�o��7��\^d#�K��,�n��h��e[7!1�ǵ4G�KoPD�Y���
����t\/}t��RB^��z�����%�N��>,��:^�R,E����$'�1�`��TJ���r${�]�,�T�C6_�pls�iP��x�и�9.tO�0�?)�)�a�l+�B.��[�m/��ė�Kd�H�k�����,��D�ɇ�D��Y�Mj����-���39.f�����u�ȴ���;}�J|��HF��<[�}ByxJ�i`*2�ӭ������xO��3�4�`��8�N�:7�k�ab�Ɩ~�k[7���m�_���k<t ��D�RQ%t(��Q� @I�#`��`�.[p�-��
�oD��-=�|/�o�A��N/��R��e.q�s"�V%�hP�rpFQ1D/�q.�3���� ٞ���1��_ 6J�>���5I�o%�y,A��#�������F;_
�8cs
����h=ߺ�n�[��D���T�Z��@��'>��l�L�F�,�@<i��O(��\֛C���$���08�h����� ��cB�H����
� �;���$ّWǓ��b��+��\Ϋ҄J&ep
�܅'[��D�0��e،����$�I�a���i���<�j&�HR!�텂���QPHV®����h��o�}�/�q�V�U�i�:o��w�����WMH_)A2Ӫr�:��К�N�eл��J�6  ���€�H��P�c�E�(G��-&#}�?��7{��m|!��3&u[��l֫��yL2 F������nzaq�j�V�%��>�y�4D�m��Qd�v��(�#��k#c���+P
�   ⑧��V�����F�>����x4�ȥ��  "驸Nc)�
����l����/ZX�DQ!g8
k&:�Ct�� ���q���M�*��8m�    �1p�70Z-V*+����C�*�+x�i���#�|����;��7(O��"��c��VZ\��؈�G ����9o�F�3�/�1^<BҼW5�)t��!"�sU{��W3�އ��|�-���p�$����1/���cc�9@�����Nq46-_��qw������u�5�޽_r�F8P�rse�~�A<��1���8���=tRj?H�r2���J�p�E���U�)䟝�����JKΫ%�d��
$��Ҫ��h
oH42x��<ܧ��I���u`�;�n�{I�^"�a(���<4_DP�#
N��߇��a��|�u��[*��K���;�ugu��[_��*�k���xb!Ü�K�ػE�g���K�0��<՚�YF�(���U�r�&��>����#3&�[��\WA���2$���=x��]�}(�[�Ű�S3��-�\���+��3"-�"嫑*���  ��������JDr������V�7&�e��������u��[�3RK��FIa,k��c��$5�Tz    ����9���HlKn%��_�$��\bA
����IƗ8���6%d��Ǐ���>Aj�V�j]�JE_#��g��Z��/�fTS�.'(�{/z��|��x*n�rw��ެ������6F�������́�O�0����Ca4������X[p.��,ϐUZ�����T�4i�@rp�=��d��zq8��
�M��e���\��^�)O��!�ӻP5��p`K�yû���ls���c�{�7����r����=�nSsĶ���谚͎y|�h���.H�Z���";��R0��;�x-���>��ݦ��9&�q���
�����~�rIq����+�^]G��w
w��s�:���!���0-���9^W��kʥ��#Hb*�q�  ������x��?�Dɋ�n��<�s�i)[� Tj�W A�i�v��!�"9<ԖZ6T���DN
up�*�{�!��O��I�{
���Ƨ�'f�|�$z��"�@Lc��
1�j��#���;�˽��_�S�Q��g�E�����f����(e3G�gC)G��&��Ǣ����vH^���6���3�8F`�   z�Wz��R�(I���Orܾ�f;�*���Ҟ#}���M|cJ��+���,���MR�Q�D�\����ú���[l��N��.w�z$�W���-��I�"*q-�'܅�A��ݍ@�28�G9~�4^�N�9IgU-��3^�+0�]W[ܪ�>ac}4�)j�B�����?6�P��ȩv���œ�ܡzL����ؐ��J$e�����=�N�<���2Jd7�I!��Bq*�:)AW�lU�-�.@W�e��8��H��Mz�()t���s�<
z�G�!��d�+W�n� ��fdI=K}��Aaq�kW#�<T'i��^wǸ�y
ՠrW_��:��|s^Z����p�PJ����z�h���\��Nl��<IMV��R�����������\i L�D�b�.
�bO-8�(Ύ �<\�G�5�"#~��5��L�d��^��ȵ��ig���H?GƊ��(~�ޭ�$
��4����z�ܹ�ڼ�6��B׽c���eX���
0+�о�i���G���uMc����    �%��I��?�+�:�%"�,rh|���X���/j��7~{KgOeYhXQ(�#��<F�}:��߳9�!~#�Xp=��ƈ�.y�H��{h?`GJ�DT=њ����6��mrWa�qIF�f��K�5��9�4A   ��qvn`W�~xB�DP��AẨ�W�]X�63z�E��i��V׌���j[��0A,'�5:O��e䢊����{�wr�N�{>��*Dd�[\�����)�^�l�w�(��:�!�f:xd��#��!���S%^;�����d]a�;��
�>�0 Ny:��A��l��T�TV�ֶ�Տ�iv'={�����u�c��XPɷ��Q�N�_�ʉ�3; <>VWm���z��F�W,�����r�!���J�u9���٫��3��V����_��ix6��N��k����
�)-�r���3jP
�Çg�ЗN1���-Ÿ&��THOIx�ł-�,߄��m��;�݊ĵ�kP'���M�h]^�v�(F� ��������z�I[A1L�ݢP�t��Z��!�b��Y�ᄘ/_F�[�2��N�{���Y�[�+����c*��k­��J��'[�O��Ը��[ֈ�> Л!�Ƃ[K�?�M&!�V���V�A�Gk�-���Om�
�����N���Q�e.�!����4m)��4i^4T���O   ��c�U/��*'Xh-b�f6V`�ށ���*G��A���:��Pҟ��Y-#�]�{ N�*�*�eF�����m�_`�-��Ɂx�������ߦJw@��$��З���/�$����]����2��ׂy��{G?�!ߌ�X��k�,�4�m�e�����O�#��5.x�S�hraaƻD5Y^��]�����I�;�e� <R�#��@��:�7[&xi�^�Μ�N�k ����y��S~��E^<յu�q�7:��\����τs�Cte
�p=m�����]��8*�����`    ��Acp߷*3�T"F��n$�O S��`�|ҩ5z6n�
�^(U�gDJ�����r9�h�s8�
ڏg7�ӟ"����+���L��..
W�KW�~�B��hY>Hx)Q*�]�Rg��?�*X�ݟQ`g�bL(���|U���:~P�GRb�T�+Y�����P�»l_1��JΘI�\��B�'Uێ���8o}`���9��>��U�n�2��m�Ţ�4�T�"�&,^��*��>�3���K{IC��u�K'��ư��%���x͚�(���5��'gi��d�!|9l�O����8D�����u�@�1�Z?p}��2�����}8�:�v&�/�,G�,��(8���+����V�2{�T��.��F
�Z�*4�e`��|c�a��1zJo|,t��4��Hצ�1�����bz�3���"���|�����:��+�iG���U�ڢ�x���b��bf3�+l���˯M���eEle�^������h{��h|�Q�D���eG
ˆq��P?���B{�?t������@GAW�%t��#e|�Sf-� <P�a ֮l>_ ��㺛��f��זf����:�UBx��fʆ����N\JI���~��P�g1����>�U�b(0#�h(,T��JK��1�����Q^�p�k�ڤ
�&I��0HXG�_����(��ZdT�����-�
��Ώ;Y)�J�ׅ�p댧�/ -%v�Ⱥ�L��Z�U�I��*��U�N������I��0
s�W����
=��ƪES�:l|�m�����   Nxs�޻��i�pN�C_\��M���
��P�{�zE�%�.A�i�C�����l{��f7�\N��@��_z�����p<��0��4$h��_?��ŏ!s0M�w�
�ah8����A�,0���7�E����6�r�-�c���H5�4�^ˉ�̆jQ��>����-�{�p�7T?Gc�8Օ�<�N��W�m�:z/O�˟����z�/����L����������|�H�Ʈ��|�`>F]�~"5”6�i4�\�A����o�碷-K�2��䩯ͨ�8��oo��/�"�k�_�mrx��(�m�9)Q]�o�4\C
�,`T%ݿJt�k�vj��z�'�(x;<8��K'+�d�:�����t�v
ii�~�u��y���'�m�MB�J�*������|��Y�̰�N�/�A��Fm�ve|��ЬGZQ��V�L����ߒ�|z��lᾛ��0�W���*��?2��5A'V�t̄�[sE+  ]������A���:��ZZ������]�yNH�J
�l�T�KEz��v�TQ��4��*�f�_7|*��������x�-�K�tΰ��/}+��1�-T0���w��1trw�5�{��e�޺%��8'�pZ_�َ<gSco��u7(�3�o���e���^��"��U��F�M�B��tna�5��)��]؈h�@K�Xt��Q���w9��'y��1י|�:���J]�QLKW�y��܅�;V�I�����!3�ڏ���y����
 d;�J��w|H<nFu��i�=�MCa��솲�J�S�ȴQ����M�fך�)zW!�īN8��Y��`:�_��"�
\   2���wzC��Rn�~�0�&���)�詊os�$���o;�!�ӱ�Œ���=�[:����Q��u-��r 9�I,᰼zݱ�5F�z΂� ���u����.Xd?s�[�V2lnٲ���q�������(�)d�#�$�;3�G�����ʗ��(2;/���y��`��#jng֛���FXp���&Bw)���v��)�w��p�j�)k��͒dzz�Rb�0���Y�VG�?x�� i�����kn����A���)N�'\4��\瑺�F��k?A
����Y8B���VDK���3��N]����b�m;~^��B���ȡeb��Y�A*�@ƿE�xY�U��[k���,�Q����?�tg���û�PgPN�A   ���\�糧=͟��b9�ߗä��Z���5�a<t�\u�=�Jb��7/D9ᛝ�]���ˈ�j�U��C��gb�K&�W]���7����#�U�ޖH�5�Wf4s�����Bt<LR��C����a>����@io�0W�+c{uې�CC��2�q   _��Ku
o��f@��i���I���;��-�_�-�F�v+P1��M�4��i�T0���F��
+\�����mV�b��p���� �l��"jg�`NQ��Y�ۦ���Y,�T�1�ݱ��N1������{l�����x���c!�&��`�)1��K�Y�^A�y`=�گ�JK\]-l�X��:��g�P�a�Ocx�Jߗ����U#�l�����P��~_����U�0�r�
�Z��N"��u �(���+qQ�������I�q!PX���B�#���8��)��3����r!KC�p*��I���Nӎ��e���v�+��TT��� �~V�v�=���?M�29��{M=s@��eRQr�&��=�Q��٭��}�k�5��]��[�D��'���O���G��S#�m���n�^�0��Q���~�M�y�)��bAeQT��SNG���#��������[�NbD\hlv��X��n�$�W�K
]���U�
��h�3����p;��V���`���uX�����    R+5��r���x�=�X  �����˅�WP(����8�9���s�UA���h�}q
]���^�L�����q]~�Z��WZ��Kk���w��0�[
Of�[�-�^>������AC3���F~("��׻U ]ձ�B�=��K���f�/��^ܦ��.�&Ι�f���m�����=p���l4�Nx�r?*����I�l���TY&ՠD�K�b>�<�3_�[��MNc����Z$�-���X�zd�S4�g�F��,�����0�]�i�5�[���M�پ�~�g�� �1F�D�ȹ�]j���;W�A�s&�������g��k]�x2w:p��F��4��������A�a��_�����!�]�S�J�W@6�����������6�cy�jl�����u>���d`�h's��[�����=[(TznG����W�8$4��j��W
�P��!�
k��T�tef�c"�%f�ߥ=�o�G�(U����+�ġ7O�b���7��9"�n����
��ԃ��=wJѿ_�yR0ab[hӟd�c��e�/�������P&    ���}P%�t
��aW�[�cN'����Ώ�qO�YF�t����}"vkK'���ʰݛ4���qva���,,�'%B���t�TABҷK%�#z�fN�os�ܰJw{\+H��eq)�������U�9D���CȆ�)�`�|�'��d)Z��  qu�σ��%}�~C����L�6.�����4&j��u�ꀃ����I3s�ΪPq�D�!vb��Ў����ꓔBV��_Q�>�h�.x�F���93=�xf:�8�k�i��>⛰���<�,5Kś"���|r�!8Z�quCC����=�v�(�|��v���!,?�I8�~��~�WeX����\�lL9���vrѾ}��m�}+��&|}*M��s�&X��FN�1�,��[#B��Am3�
-Q�R    �ì���V�� ^Yܓ�#n�(��,(��!��r{�y���66�7�`�qC���2�cl��C�9��Z����C/�c��Dj<�n~�2����&�cZ��?�n�M����W��0:��hkI����%���>�����=��p�������ڭ���Q��������p��6��,���Ԗ`�|P�Q+�g�`I��`?V�YT�C�}.���}��g�3D5���e?&�!]�N���N���i��6�q��GR%��)D���̫��t���
M��'�3�����H�c?{��n�o4���+�$�dP\�g �������lT��j�S&(���PVF
9Hh$*T|`<=8�l�潥|9��M�!A5�]�����ct#t�L��T�7*��!k��tP�
m��b*_���k`�QmV����xj�>k�*@�?ѺS���l�L�?��*F��^D.�S��ϻ�01�@q��Ŋ��0�B�:s��l0+�f�x��Da�g��Fǵ��
�[jc����E���((�[ֱE�~�H
\����|�:%k��'[ "�.q�*�_;I��sKzJf$�pi%�D9���dpt��Ԏ�ƛ���quD(u��tA���YT.�!����tEfV�ղ�O�s��Z�ү�H�g�Zc���A!i�kM]R������*�e�(ôh���;��5���P��1�N�3��y5�E�Ѽ��"TѼ������������&`��$㼆u빜͐�s��{ 0�u��kGu�����2�s�E�|e�Ә�W�5���
��Y��dw]N�;�_����d���7���a}����������������

����������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������h EncryptedPackage2StrongEncryptionDataSpace����������������2StrongEncryptionTransformXL{FF9A3F03-56EF-4613-BDD5-5A41C1D07246}NMicrosoft.Container.EncryptionTransform��������������������������������������������������������<Microsoft.Container.DataSpaces����������������������������������������������������@<?xml version="1.0" encoding="UTF-8" standalone="yes"?><encryption xmlns:p="http://schemas.microsoft.com/office/2006/keyEncryptor/password" xmlns="http://schemas.microsoft.com/office/2006/encryption"><keyData blockSize="16" cipherAlgorithm="AES" cipherChaining="ChainingModeCBC" hashAlgorithm="SHA1" hashSize="20" keyBits="128" saltSize="16" saltValue="IQOpNtRK7dqGPQbMQMKebQ=="/><dataIntegrity encryptedHmacKey="eq+2yqLFa/2Lv7UpGb3FodW5qQtItpynDbQkwmOkne8=" encryptedHmacValue="K2ACBlz2gs9riC1Xq1gOGBF3tx+ecgCUnKrI+cDUVGY="/><keyEncryptors><keyEncryptor uri="http://schemas.microsoft.com/office/2006/keyEncryptor/password"><p:encryptedKey blockSize="16" cipherAlgorithm="AES" cipherChaining="ChainingModeCBC" encryptedKeyValue="f+ppGnMCZBT/SpR87LsySA==" encryptedVerifierHashInput="ZUjw/GjZ4qidGi/zEszCmg==" encryptedVerifierHashValue="GyEkmmzvhjH13ZZFN64Fd1z7sPatooUoRUcNFpvPi/g=" hashAlgorithm="SHA1" hashSize="20" keyBits="128" saltSize="16" saltValue="5ArJoMRYeh1Bs5AtaRnYug==" spinCount="100000"/></keyEncryptor></keyEncryptors></encryption>���������������������������������DataSpaceInfoStrongEncryptionDataSpace4������������@TransformInfo��������StrongEncryptionTransform4��������Primary�������������Version������������LEncryptionInfo���� 

The code I am trying :

const response = await axios.post(somehost, formData, {headers}); //get the file byte stream
      const  buffer = new Buffer(response.data);
       var stream = fs.createWriteStream("my-report-1.xlsx");
       stream.once('open', function(fd) {
        stream.write(buffer);
        stream.end();
      });

Is there any way to read this response and store it as an actual file? Any help will be appreciated!!!!!

  • You don't show any code, but you would typically just `.pipe()` it from the incoming readstream to a writestream you created for your file. Then, the bytes just flow from the incoming request to the file and you don't have to convert anything or deal with Buffer objects. Please show your code so people can offer a more complete answer. That's how things work best here. – jfriend00 Jan 30 '22 at 01:54
  • @jfriend00, Thank you for your response. I have added the code for reference in the description. – VIKAS BIRADARGOUDAR Jan 30 '22 at 02:54

1 Answers1

1

You can use .pipe() to stream that data directly to the output file and not have to go through a Buffer object:

const response = await axios.post(somehost, formData, {
    headers, 
    responseType: "stream"
});
response.data.pipe(fs.createWriteStream("my-report-1.xlsx"));

Example of using .pipe() in the axios doc here.

jfriend00
  • 683,504
  • 96
  • 985
  • 979