DATAtourisme

Consommation du webservice

Bonjour,
j’ai créé un flux et j’ai une clef API. Je n’arrive pas à le récupérer.
En ligne de commande avec curl je n’obtiens qu’un fichier binaire illisible.

curl https://diffuseur.datatourisme.gouv.fr/webservice/monFlux/maClefAPI --output data.jsonld

En javascript avec request.js une requête GET sur ce flux donne les mêmes résultats en binaire illisible.

const URL = "https://diffuseur.datatourisme.gouv.fr/webservice";
const request = require('request');

var options = {
    url: "",
    json: true // Automatically stringifies the body to JSON
};

function getOptions(){

    return options;

}

function setOptionsURL(url){

    options.url = URL + url;

}

...

getData();
async function getData(){
    
    parameters.setOptionsURL('/monFlux/maClefAPI'); 

    var result;

    await request.get(parameters.getOptions(), async function(err, res, body) {    
        result = body;
        console.log("Data received : ");
        console.log(typeof result);
        console.log(result);
    });

    return result;

}


Dans les deux cas, utilisation de curl ou request.js, j’obtiens ce type de données illisibles :

ad��&n����dt���C7uThl�T$��#     ��M-20f������Z�CX���(O!�Xd$��@u����+�,�վ��<k:��{z�2�f�� 4���`��ð���!�ʺʵ^�[�!
                                                            ��H���=�S�̬iA�jx1�=_�~�j4��As�����~��&Ӿ_��)�2�JJRv}�>�4DBM��&�*���f���:i�KwOj��Qhw�duRC�Tn�[�+p^�U���,K�Qj��Q;m#U9_�'o�7��]{�<UT��G�n��4���"Xt:ݢX_'��Ii�:G��A�d��T�98���-��K���48��a;�
                                                                         Ps���Sep_
                                                                                  qA�Y�+�#��sJ\2��y�֝z���Z�qa+��Y�U�����"��J^(�m��j7�uE�?��xC���
                    �����IL�ö���)Kx�ߵ^呋]
                                         :0�eݦk�h+�\�LaX�p1aӟ��{y��``X]�и��*�L����H���h���"�ȯ5'��
                                                                                                 �!���Γ �C��xɴ�?!?��j=�Z'�7

Comment télécharger ce flux au format choisi (JSONLD dans mon cas)?
Merci

1 J'aime

Bonjour,

Les flux sont servi compressés afin de préserver la bande passante. (Page 12 de la documentation en pdf https://info.datatourisme.gouv.fr/wp-content/uploads/2018/04/DATAtourisme_Documentation_application_Diffuseurs_-Partie1_v1.0.pdf)

Avec curl il faut utiliser l’option --compressed, coté request.js c’est l’option gzip à true.

Cordialement.

1 J'aime

Merci c’est mieux comme cela en effet.

cURL

curl --compressed https://diffuseur.datatourisme.gouv.fr/webservice/monFlux/maClefAPI --output data.jsonld

request.js

const URL = "https://diffuseur.datatourisme.gouv.fr/webservice";
const request = require('request');

var options = {
    url: "",
    json: true,
    gzip: true
};

...

Cordialement

1 J'aime