Sto facendo i miei piccoli passi su node.js e sto cercando di capire il meccanismo sandbox.Debug di modulo gf3/sandbox
Attualmente sto usando il nodo v4.0.0 e node-inspector v0.12.3.
Ho installato il modulo GF3/sandbox ed eseguirlo con questo semplice codice:
var s = new Sandbox();
s.run('1 + 1 + " apples"',function(output) {
console.log(output.result);
});
Al fine di eseguire il debug facile, ho anche commentato la funzione di timeout in sandbox.js
di file:
// timer = setTimeout(function() {
// self.child.stdout.removeListener('output', output);
// stdout = JSON.stringify({ result: 'TimeoutError', console: [] });
// self.child.kill('SIGKILL');
// }, self.options.timeout);
Il problema è che il debug NON si interrompe su QUALSIASI codice di linea di shovel.js
e sono sicuro al 100% che il modulo stia utilizzando il suo codice.
Perché è quello? E cosa posso fare per eseguire il debug di shovel.js
?
Ciao, Grazie per la tua risposta dettagliata. 1. Dove devo mettere questa riga: self.child = spawn (this.options.node, ['--debug-brk = 5859', this.options.shovel], {stdio: ['pipe', 'pipe', 'pipe', 'ipc']}); 2. Che cos'è "debug-brk"? Perché non usare semplicemente "debug"? 3. Nei paragrafi 4 e 5, intendevi "node-debug" invece di "node debug" ?? Grazie. – ohadinho
1. controlla il primo link nella mia risposta. 2,3: La mia risposta è per il modulo integrato ['debugger'] (https://nodejs.org/api/debugger.html). Ecco perché '--debug-brk'. Per 'node-inspector' è necessario utilizzare i propri comandi e argomenti, ma i passaggi saranno gli stessi. Sono su Windows e non posso testare dal momento che 'node-inspector' non funziona bene su Window. – hassansin
ha aggiunto passaggi non testati per node-inspector. fammi sapere se funziona. – hassansin