4

I am using react-query wrapped around axios for APIs and trying to save/download the response to an excel file and store it. Below is the code and the api response. I am unable to figure out if I'm missing out on any headers, if the response type is incorrect or the RNFS.writeFile call is wrong.

import axios from 'axios';
import RNFS from 'react-native-fs';
import {useQuery} from 'react-query';

export function useExportGains(
  accountId: number,
  fileFormat: string,
  fromDate: string,
  toDate: string,
) {
  const getReport = async () => {
    const baseApiUrl = 'https://devenv.product.com/API'; // api url
    const Api = axios.create({baseURL: baseApiUrl});
    const params = {
      fromDate: fromDate,
      toDate: toDate,
      contextFilter: {
        appUserIds: [1],
      },
    };

    const mimeType =
      fileFormat === 'pdf'
        ? 'application/pdf'
        : 'application/vnd.openxmlformats-officedocument.spreadsheetml.sheet';

    Api.get(`Reporting/AccountAnalytics/${accountId}/exportGains/${fileFormat}`, {
      params,
      headers: {
        'Content-Type': mimeType,
      },
      responseType: 'blob',
    }).then(res => {
      let dir = RNFS.DocumentDirectoryPath;
      let filePath = dir + '/test.' + fileFormat;
      RNFS.writeFile(filePath, res.data, 'blob');
    });
  };
  const {data, ...rest} = useQuery(
    ['Reporting/AccountAnalytics/exportGains', accountId],
    () => getReport,
    {enabled: false},
  );

  return {data, ...rest};
}

API response from the swagger doc:

PK
�;YT��ssL�[Content_Types].xml��Mn�0��=E�-J]TUE`џe�Tz7�Ƕ<��wb(�*J�`+�y�{v4O7����xW�Q1��k�������"CRN+��b(����|3;,EC�Ī�Va�8��>���5.dP�R-@��w���QN������V+K��wA"X�㮱c�B�`M���r��J�'�L=ؘ�n�(�������f�ѐ�T�W�r��X������eq��HJ_צ��U˒C����i-Zeܠ���Q�et� ����v��#$� ��^�ړi�Q�;E����}*�g�� �p~����y`#�dN��@d�O
��i�G�2�O&�PK
�;YT_rels/PK
�;YT�I��K_rels/.rels���N�0@�|E���nH��� ��&4>�$n���ă�@�i�q��g���<��R�,��·����iq*�#2p���f�L#J�ɽ�YH�z���u�=M�+��O�iB)���v������t�ɀ愩��@ں%��1�5ln[o��a� gZ��(dL��y�W�*P��]V׻�=��HС���hS�N��Z�u�]   �όKB������#wY  c�2�'7�|PK
�;YTxl/PK
�;YT    xl/_rels/PK
�;YT�$�V��xl/_rels/workbook.xml.rels���j�0D��
��ZvZJ)�s)�\[����LlIh7m��UH��Ĭؙ�H���8�OL���*J�M���|4��g��[=�
&$��w�74�r}$�M<)p��EJ2GME���MҨ9��ɨ�^w(We�$���O��
��V �)��C��_�9���J�$���/�:dG]d���WK�s��s��<�[�V�tB��)?�����0_!��!��4�E�ǩy���PK
�;YTxl/worksheets/PK
�;YT��xl/worksheets/sheet1.xml�U�r�0}�Wh����1ΤqӤI�4��Y�h���_ߋ0.�x2ya��"ݣm~��R�aRq�����������\��c�4�#����x��X|�o�|W   c�A�B�h]�,KфeD�D�r@b!3��)W�*$#�e�������q�0��q�)[
��X�+�R�a�*ᅪ�2�����uqFEV��O��S�2:�]�B����9���i��3N�P"�#�;L�_s`8-��
�ԑdq�/�٫����p��%�XL֩~��W��%�1k��ݳ
K
�����3�E�%S�
��CP�*�E/�%�C�[�$�c#�VZd�� �Ӄ`�(�/�rNJ��`HzzT�>hwH<>-���'F�j�����Z�����I-���n��|�f��f.�&��[$Ͳ���ݙ�~��e�\�5-ɗ@�.��[����}mbN�jbn[6�q��ļ6v���6�����vdLڌ���6�6��8o3~T�q��w�L:�ݷ�Nb�ѝNp?��;��~U�I���8��I������������@ѝD_���lj�6vyAV���JYl�3\o��sͿ���c�&4�����
�dقI�B�aU��L�$$�sb�BjI�1���˂���L�n��*kN��Mk���~�\5�O�9�Ǘz�PK
�;YT�~�eqxl/sharedStrings.xml�SMO�0��+��!ېBm�iSa���Ǩ��H�Sb��O:��J�v��{�ˋ��?\o�zJ��b�����}������C�i<a�>��<;K���8U�H{�5�5:��E���g$�^s�T\#�k�l2���XRP��$U�����k��c!K�f�dkb  �Cx4-Y�{�.֏�ڂ�ٹo�lX��>�%C�5
��  C�3Ya(|S��7���m�Tᇑ�:,=ː��o<0��dH�t��
��#���#m���w_G$���C��G`���Ҵ��m�l���D*�[�%4T��n�!�)B$����A�?��AN4xH6��iX0<\N�{��m�{��C� Vw&�PK
�;YT    xl/theme/PK
�;YTv�0�!xl/theme/theme1.xml�YMo�6��W���R'�S�nm� q;�HK��N����
��m�a[�إ�5�:lп�Wև)�j�&�P 98"�<���%i_�q2tH��<�X��5������u8�Ҷ�T8�0��XS"��]�* !A@���X�R�mK����c��1!V0��   |bCf7j�5;�4�P�C�zo<�.A�D���r�}�����}w�S�h�>�/���:Ĭc�.�
ɱ��R���U��Y6��9��*�F��rjN�)U���[�֯mϵ42-h�����s�)�.�]_���z�����g��^ͩ�(���2e���:�eJS���)��Zk�Q��4�c��뭕)�FY[�����(),`4:X&$�=_�9h��-3�
�v�!��R0��ʌ�#.�H�+!5������p$(�i�k��9W.�%
�t�U��$�P>s̛�?�y��y����ǿ�<yr����|����/���3����_?��� u�?��o_U ��|�ͳ?_<{����Ԅ�x��4$�%Gh����I�3R��%
jB�UPBޝbfvI9��#���Q���@L5!oa ��9�ra��v�N�i���D�a|hT�[X��$�ܦF����L�e���'Q(y�1�RZ��u�|��C����3�#efݢ!,��h#�z)B;P�3��mrX�B�`fJX)�7�D��l5���U`4t*�RूE� ��)��{bZ2�6�6e΀6
�P��zs�C��A/�al��F��X@�b�˕�^��d���@�:c�ߧ~`N���Dk��r�N��(�ʽ<��[;;���/;�Bg߂��XQ�����v�m<�v    T�e�l�M�m�>Z�֬m�ȞJ
��c�ؾ�2rG��^���f�ьW��s�e�/�l�W�R�8]�T�/s��D1�pe���Wc
��&��2x�v���7K��BR:�eI]3����ؕu֝
��i:m=�P['_k����E�/Y�LH�X�{��5}��Ӽ�k�����і��{�w�P{,Z�����4�8�Xc8��c�L�4(���c�*�u��]�~�"��5�����XH��e�g�/z"͑��J�rQ��Ъ�4����{i��xL\U5���|����#4b����V�z��m4��oeYY.��N�+�8�YA���H   頰#�F�U>��O��ɹ�)��]87�ٳ�Q���ph]q@݁��E��CP:�i�%_�'6�C�ݥR���j��HPh�*��������]7�����2�F䐰aR�kI0,��'�J�\ZH�X�#��Z/�յζ����C�T��o�j����Q�~�y�N����p�A��T�L;'�d*�r�J;+�br��u?a����]�  ~z��߬���J��~���ۆ����R:\�q����p    ��lJ�0̞vE���{���ɴ�d�)6�1��q��Q�~���2=I(
nsn��6���X�_p6�i���<�2��?ed0o��ر��Q\ɓ�(��|�(����Eu|j�����$�J�^�����%��PK
�;YT��v��,
xl/styles.xml�U]o�0}߯���Q
4��jI�T��&5���I��S%���g�~���(���{ν���DW{��Q�"�޹�̩����:u�T�3)H��Wɇ��F�w�h`DÝ���*���sYav
�8�f���*�yeI�!�uC�1�U���5"��u�d��X�
eT-x6��
����H��g`��?zh�GN8͔�d�ύ(�EA3�8��!�
JF�mJ^�\�M<�D�S�+��Z�Nz��Mn�N h�`)s�������5COr��8��-|���� ƙ�E]rITH1���H�L2��6gG,l(��f1�-М,iNMm�Gx
G��3�Q���zhe���-�D��4Q"5��ׇ�#L��2��_��
<?����H���5N�����B��۝�,����tN�o���J���f��{{�'��bT��E�SP7meڅ����#��M�`_��'쮗_��,����Ҧ˺N�C5x��]T/��*�*5j��f�Q`oH�,���75e��'�h����]m_�S/F#'��^��1�INk��V_�ԝ�0��7���׷�nFP+ß׋���:�����:�8�`�r��r�Z�3�w��F��?<�݋lD�3V�K��~�b8Z��7�g��>�C�S�Nz�z�$�Sg^Nx�*�,��4���s�"���r¨ ��Ǩ)�Y��:V
���7PK
�;YT    docProps/PK
�;YT�r<�xdocProps/app.xml�RAn�0���1�
�b8mshQv��ZYD(��n��/%������`4���;t��1�
��E)
�&���+��r�I��kp�c%�H�NP�"&�HEv�T��9��$�b��k�7MHp�^����y�г�.�[�F_c}'Cqr\����u0C>z�c���>Fg
p�I�ݚ(4\|>tJΗ*mѼ&�G]*9�ր�u6�
8B%���0t��H��W=� �;�v-�_@8ĩDɂgq����H��ϐ^�EdRr"G8�α���� �K���d|qg�!�h6������c1��������ס��srB߬����xn�T���S��s��������y�n�|z�zy�(o�r<��S��)�?PK
�;YT=[$�+^docProps/core.xml���n�0E�����ĉ��J��V��T� ��,{��!�m������Ҿg�gF.�[�$?�4�BE��47B�U��I����1*����M�-����3\���(Ҟr[�u�b���Y$t��)�ѭ�e|�V�I��c�    ��|P�o���14�@����'6�S�jA���J�����1譗ضm֎z4�_����G?j*u�*�.����s�Ѧ�%>����0�q�K    �yw��F�a�}9�$�C������u6A5� Is���Y�@��~u/_ԟ���ȿ�GA��}�%�_PK
�;YT]��Vmxl/workbook.xml���n�0@��
�wpڈ��".��wcO��7���wH����������hr���%��%`����J���>z�$&n%��BI��zX]�o��<ocI��|�X
�΃ŕ���aǢ�el��l�esf���B(�=W�J����.��'����q�q��o�H8��UZ�s�Ĉb��.�ƪO��@��
�(\tu#�*ySo��<��\-k���r�{��M�ES�yLoR%�%Ŝ���Dh�K�4��lJY���@$Լ���:��|��9%�2A�u������.^{ҷk٭�}�m�?@�(6���-a-g�
��@����<�,��`�PK
�;YT��ssL�[Content_Types].xmlPK
�;YT}_rels/PK
�;YT�I��K�_rels/.relsPK
�;YT�xl/PK
�;YT    �xl/_rels/PK
�;YT�$�V���xl/_rels/workbook.xml.relsPK
�;YTxl/worksheets/PK
�;YT��Hxl/worksheets/sheet1.xmlPK
�;YT�~�eq(xl/sharedStrings.xmlPK
�;YT    �xl/theme/PK
�;YTv�0�!�xl/theme/theme1.xmlPK
�;YT��v��,
8xl/styles.xmlPK
�;YT    ,docProps/PK
�;YT�r<�xSdocProps/app.xmlPK
�;YT=[$�+^�docProps/core.xmlPK
�;YT]��VmSxl/workbook.xmlPK��
Mohanish
  • 61
  • 1
  • 8

0 Answers0