J'utilise exec library pour appeler R-script depuis le noeud js express. Ci-dessous mon code:comment passer plusieurs params dans exec dans le noeud js
var exec = require("child_process").exec;
var param1 = some url;
var param2 = "hello";
var param3 = "world"
exec('Rscript pathtoscript/myScript.R"+" "+param1+" "+param2 , function(error, stdout, stderr) {
if (error) {
console.log(error);
res.send(error);
}
else if (stderr) {
console.log(stderr);
res.send(stderr);
}
else if (stdout) {
console.log("RAN SUCCESSFULLY");
res.json(stdout);
}
});
Dans le code ci-dessus, si je passe seulement param2 et param3 le script r est capable de l'identifier. Mais quand je passe url, seulement une partie de l'url est identifiée comme URL et le repos n'est pas (peut-être son long). Veuillez suggérer. Merci
Vous devez fournir plus de contexte. Quelle est l'URL? Est-ce que l'URL [codée] (https://www.w3schools.com/tags/ref_urlencode.asp)? Qu'en est-il des sections pertinentes de votre script R? Les chances sont que votre commande est mal formée. Avez-vous essayé de 'console.log' votre argument de commande à la méthode' exec'? Cela fonctionne-t-il à partir de la ligne de commande exactement comme il l'a imprimé? –