IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

NodeJS Discussion :

child_process et async ?


Sujet :

NodeJS

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Profil pro
    Inscrit en
    Janvier 2009
    Messages
    15
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2009
    Messages : 15
    Par défaut child_process et async ?
    Bonjour, tout le monde
    Je ne trouve pas de solution pour lancer des commandes curl de facon asynchrone. je teste avec le module child_process mais sans resultats. Le script suivant me donne le reultat qui suit.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    function sf_upload_file(token, project_name, upload_link) {
        return new Promise(async function(resolve, reject) {
            var exec = require('child_process').exec;
            var command_file_Rd= 'curl -H "Authorization: Token '+token+'" -F file=@./temp_projects/dataaa/'+project_name+'/man/'+project_name+'.Rd -F parent_dir="/'+project_name+'/" -F replace=1 "'+upload_link+'?ret-json=0"';
            console.log('avant');
            await exec(command_file_Rd, function(error, stdout, stderr) {
                    if (error !== null) {
                        console.log('exec error: ' + error);
                        reject('files_pb');
                    }
                    console.log(stdout);
                });
            console.log('apres');
            resolve('files_ok');
        });
    };
    avant
    apres
    files_ok
    [{"name": "test.Rd", "id": "e82630bd5fd0fb131ad6ebf18347db597274b60f", "size": 3195}]
    Alors que je souhaiterais
    avant
    [{"name": "test.Rd", "id": "e82630bd5fd0fb131ad6ebf18347db597274b60f", "size": 3195}]
    apres
    files_ok
    Si vous avez des idées pour m'aider je suis preneur.
    Merci pour votre aide
    Monlio

  2. #2
    Membre Expert Avatar de tsuji
    Inscrit en
    Octobre 2011
    Messages
    1 558
    Détails du profil
    Informations forums :
    Inscription : Octobre 2011
    Messages : 1 558
    Par défaut
    Quelque chose comme ça pour s'inspirer ?
    Code nodejs : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    function sf_upload_file(token, project_name, upload_link) {
        const exec = require('child_process').exec;
        let command_file_Rd= 'curl -H "Authorization: Token '+token+'" -F file=@./temp_projects/dataaa/'+project_name+'/man/'+project_name+'.Rd -F parent_dir="/'+project_name+'/" -F replace=1 "'+upload_link+'?ret-json=0"';
        return new Promise((resolve, reject) => {
            let msg='';
            exec(command_file_Rd, (error, stdout, stderr) => {
                if (error) {
                    msg='files_pb';
                    console.warn('exec error: ' + error);
                } else {
                    msg='files_ok';
                    console.log(stdout?stdout:stderr);
            });
            resolve(msg);
        });
    };
     
    (async() => {
        let token='abc-xyz';
        let project_name='project_name';
        let upload_link='https://my.upload_link';
        console.log('avant');
        const msg=await sf_upload_file(token, project_name, upload_link);
        console.log(msg);
        console.log('apres');
    })();

Discussions similaires

  1. Xlib: unexpected async reply
    Par awalter1 dans le forum GTK+ avec Python
    Réponses: 2
    Dernier message: 03/07/2008, 09h24
  2. Async Professional
    Par samed dans le forum C++Builder
    Réponses: 9
    Dernier message: 10/05/2007, 11h20
  3. Réponses: 2
    Dernier message: 27/10/2005, 14h44
  4. Installation du package "TurboPower async professional&
    Par onyouma dans le forum C++Builder
    Réponses: 1
    Dernier message: 26/08/2005, 19h48
  5. [Kylix] Librairie Async Pro et Kylix ?
    Par leclaudio25 dans le forum EDI
    Réponses: 2
    Dernier message: 24/03/2004, 09h03

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo