Erreur

Signaler
Messages postés
4
Date d'inscription
jeudi 17 mai 2018
Statut
Membre
Dernière intervention
18 mai 2018
-
Messages postés
4
Date d'inscription
jeudi 17 mai 2018
Statut
Membre
Dernière intervention
18 mai 2018
-
Bonjour, j'utilise S.A.R.A.H et lorsque je lui demande de me raconter une blague ( grace au plugin TakaRire), la console me dit:
Object false has no method 'action'

Voici le code :
exports.action = function(data, callback, config, SARAH){
 var myConfig = config.modules.takarire;
 var request = require('request');

 var maxJokeId = parseInt(myConfig.max_joke_id);
 var nbRetry = 0;
 var searchJoke = function () {
  var url = 'http://www.takatrouver.net/blagues/index.php?id=' + Math.floor(Math.random() * maxJokeId);
  if (config.debug) {
   console.log("[takarire] Url : " + url);
  }
  request(
   {
    'uri' : url,
    'encoding': 'binary'
   }, function (err, response, body) {
    if (err || response.statusCode != 200) {
     callback({'tts': "Je n'arrive pas à accéder aux informations du site takatrouver.net"});
     return;
    }

    var cheerio = require('cheerio')
    var $ = cheerio.load(body, { xmlMode: false, normalizeWhitespace: false, ignoreWhitespace: true, lowerCaseTags: true });
    var joke = $('#Layer11 table table:nth-child(2)').text();
    if (joke != "") {
     if (config.debug) {
      console.log("[takarire] Joke : \n" + joke);
     }
     callback({ 'tts': joke });
    } else if (nbRetry < 5) {
     nbRetry++;
     if (config.debug) {
      console.log("[takarire] Joke not founded ! Retry #" + nbRetry + ".");
     }
     searchJoke();
    } else {
     console.log("[takarire] Joke not founded ! Max retry reached : cancel search.");
     callback({'tts': "Je n'arrive pas à accéder aux informations du site takatrouver.net"});
    }
   }
  );
 }

 searchJoke();


EDIT : Ajout des balises de code

4 réponses

Messages postés
32451
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
14 mai 2021
347
Il semble que ton erreur arrive sur cette ligne
exports.action

Cela signifie que exports est égale à "false" au lieu d'être un objet....
ou est-il initialisé ?
Messages postés
4
Date d'inscription
jeudi 17 mai 2018
Statut
Membre
Dernière intervention
18 mai 2018

c'est-à dire?
Messages postés
32451
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
14 mai 2021
347
c'est le mot "initialisé" que tu ne comprends pas ou le mot "où" ?
Messages postés
4
Date d'inscription
jeudi 17 mai 2018
Statut
Membre
Dernière intervention
18 mai 2018

initialisé
Messages postés
32451
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
14 mai 2021
347
initialiser une variable ... c'est la déclarer et lui assigner éventuellement une valeur....
Je pense que si tu nous montrais le code complet on pourrait un peu mieux t'aider;
Messages postés
4
Date d'inscription
jeudi 17 mai 2018
Statut
Membre
Dernière intervention
18 mai 2018

voilà le dossier complet : https://mega.nz/#F!PX4BlLpT!ioawy9Pf4c5f7xfuW9Tm8Q
Je pense que ça sera plus simple comme ça