Sarò molto specifico qui nella speranza che le persone che lo capiscono possano modificare per riformulare la situazione generale.In nodejs, come posso controllare se una porta è in ascolto o in uso
Attualmente quando si esegue "debug del nodo", viene generato un processo da ascoltare sulla porta 5858. Quindi nel genitore, viene tentata una connessione a tale porta.
Tuttavia, se si sta eseguendo un'altra sessione "nodo debug", al momento "il debug del nodo" si blocca perché quella porta è in uso.
In particolare il messaggio che vedete è:
$ node debug example/gcd.js 3 5
< debugger listening on port 5858 >
connecting...
Meglio sarebbe per di rilevare che la porta è in uso (senza un collegamento ad esso, che rovinare un altro client che sta tentando di connettersi quella esistente potrebbe debugger).
Modifica: La soluzione accettata è ora in trepanjs.
Vedi anche Node JS - How Can You Tell If A Socket Is Already Open With The Einaros WS Socket Module?
Si può cercare e ascoltare sul porto e vedere se si ottiene un errore 'EADDRINUSE'. – robertklep
@robertklep mentre questa è l'idea giusta, cercavo codice specifico. – rocky