Node.js

Software screenshot:
Node.js
Dettagli del software:
Versione: 10.7.0 Aggiornato
Data di caricamento: 17 Aug 18
Sviluppatore: Joyent, Inc.
Licenza: Libero
Popolarità: 123

Rating: 4.0/5 (Total Votes: 1)

Node.js è un software open source e completamente gratuito che consente agli sviluppatori Web di creare programmi di rete scalabili e veloci. Essendo basato sul runtime JavaScript di Chrome, il software Node.js è estremamente efficiente e leggero, soprattutto perché utilizza un modello I / O non bloccante basato sugli eventi.


La migliore piattaforma per l'esecuzione del codice JavaScript lato server

Node.js è attualmente considerata la migliore piattaforma per l'esecuzione di codice JavaScript lato server, utilizzata nella produzione di grandi aziende come Google, eBay, Yahoo, LinkedIn, Microsoft, Cloud9 e molti altri.


Esempio obbligatorio

Il seguente codice creerà un semplice web server che risponde con "Hello World" per ogni richiesta.

var http = require ('http');

http.createServer (function (req, res) {

res.writeHead (200, {'Content-Type': 'text / plain'});

res.end ('Hello Worldn');

}). listen (1337, '127.0.0.1');

console.log ('Server in esecuzione all'indirizzo http://127.0.1.11337/');

Per eseguire il server HTTP, dovrai inserire il codice sopra in un file chiamato & ldquo; example.js & rdquo; (senza virgolette) ed eseguirlo con il comando node da un emulatore di terminale:

% node example.js

Server in esecuzione all'indirizzo http://127.0.0.1:1337/


Sistemi operativi supportati

Node.js è un'applicazione multi-piattaforma che è stata testata con successo in numerose distribuzioni GNU / Linux, inclusi Debian, Ubuntu, Arch Linux, Fedora, Red Hat Enterprise Linux, openSUSE, Mageia, Slackware e altri, come sui sistemi operativi Mac OS X e Microsoft Windows. Al momento sono supportate entrambe le architetture di istruzioni a 64 e 32 bit.


Sotto il cofano, i requisiti e la disponibilità

Come accennato, si tratta di un software multipiattaforma. Può essere scaricato come programmi di installazione precostituiti per i sistemi operativi Mac OS X, GNU / Linux e Microsoft Windows, nonché un archivio sorgente universale che può essere compilato e installato praticamente su qualsiasi sistema operativo in cui è supportato Python.

Novità di in questa versione:

  • console:
  • Il metodo console.timeLog () è stato implementato. # 21312
  • dipendenze:
  • Aggiornamento a libuv 1.22.0. # 21731
  • Aggiornamento a ICU 62.1 (Unicode 11, CLDR 33.1). # 21728
  • http:
  • Aggiunto supporto per il passaggio delle opzioni timeout e agent a http.request. # 21204
  • ispettore:
  • Esporre l'API della console originale in require ('inspector'). console. # 21659
  • napi:
  • Aggiunto il supporto sperimentale per le funzioni che trattano i numeri bigint. # 21226
  • processo:
  • Il metodo process.hrtime.bigint () è stato implementato. # 21256
  • Aggiunto l'argomento della riga di comando --title per impostare il titolo del processo all'avvio. # 21477
  • trace_events:
  • Aggiunti i metadati del nome processo. # 21477
  • Aggiunti nuovi collaboratori
  • codebytere - Shelley Vohr

Novità nella versione 10.0.0:

  • Supporto completo per N-API
  • Facile avvio con Time-Travel Debugging tramite una nuova estensione di codice di Visual Studio
  • Supporto TTD per generatori e funzioni asincrone
  • Supporto per il protocollo Inspector
  • Maggiore stabilità e altri miglioramenti assortiti

Novità della versione nella versione:

  • async_hooks:
  • aggiungi eventi di traccia a async_hooks (Andreas Madsen) # 15538
  • aggiungi i tipi di provider per net server (Andreas Madsen) # 17157
  • console:
  • console.debug può ora essere utilizzato al di fuori dell'ispettore (Benjamin Zaslavsky) # 17033
  • dipendenze:
  • aggiorna libuv a 1.18.0 (cjihrig) # 17282
  • patch V8 a 6.2.414.46 (Myles Borins) # 17206
  • modulo:
  • module.builtinModules restituirà un elenco di moduli incorporati (Jon Moss) # 16386
  • n-api:
  • aggiungi un helper per i componenti aggiuntivi per ottenere il loop degli eventi (Anna Henningsen) # 17109
  • processo:
  • process.setUncaughtExceptionCaptureCallback può ora essere utilizzato per personalizzare il comportamento di --abort-on-uncaught-exception (Anna Henningsen) # 17159
  • Un gestore di segnale è ora in grado di ricevere il codice segnale che ha attivato il gestore. (Robert Rossmann) # 15606
  • src
  • embedders ora possono usare Node :: CreatePlatform per creare un'istanza di NodePlatform (Cheng Zhao) # 16981
  • flusso:
  • writable.writableHighWaterMark e readable.readableHighWaterMark restituiranno i valori con cui l'oggetto stream è stato istanziato con (Calvin Metcalf) # 12860
  • Aggiunti nuovi collaboratori
  • maclover7 Jon Moss
  • guybedford Guy Bedford
  • hashseed Yang Guo

Novità nella versione 9.2.0:

  • crypto:
  • Supporto per la creazione di entrambi con 1.1.0 e 1.0.2 (David Benjamin) # 16130
  • fs:
  • fs.realpathSync.native e fs.realpath.native sono ora esposti (Ben Noordhuis) # 15776
  • processo:
  • espose process.ppid (cjihrig) # 16839

Novità nella versione 8.5.0:

  • costruzione:
  • Le istantanee sono ora riabilitate in V8 # 14875
  • console:
  • Implementa il minimo console.group (). # 14910
  • dipendenze:
  • aggiorna libuv a 1.14.1 # 14866
  • aggiorna nghttp2 alla v1.25.0 # 14955
  • dns:
  • Aggiungi l'opzione verbatim a dns.lookup (). Quando è true, i risultati del resolver DNS vengono passati così come sono, senza la modifica di Node.js che altrimenti mette gli indirizzi IPv4 prima degli indirizzi IPv6. # 14731
  • fs:
  • aggiungi fs.copyFile e fs.copyFileSync che consente una copia più efficiente dei file. # 15034
  • ispettore:
  • Abilita tracce dello stack asincrono # 13870
  • modulo:
  • Aggiungi supporto per ESM. Questo è attualmente dietro il flag --experimental-modules e richiede l'estensione .mjs. node --experimental-modules index.mjs # 14369
  • napi:
  • implementare la promessa # 14365
  • os:
  • Aggiungi il supporto per la notazione CIDR all'output del metodo networkInterfaces (). # 14307
  • perf_hooks:
  • Un'implementazione iniziale dell'API di timing delle prestazioni per Node.js. Questa è la stessa API di timing delle prestazioni implementata dai browser moderni con una serie di proprietà specifiche di Node.js. Le API mark Timing utente () e measure () sono implementate. # 14680
  • TLS:
  • più PFX in createSecureContext # 14793
  • Aggiunti nuovi collaboratori:
  • BridgeAR - Ruben Bridgewater

Novità nella versione 8.3.0:

  • Il motore V8 è stato aggiornato alla versione 6.0, che ha un profilo delle prestazioni significativamente modificato.
  • Altre modifiche importanti:
  • DNS:
  • Le istanze del resolver DNS indipendenti sono ora supportate, con il supporto per l'annullamento delle richieste corrispondenti.
  • N-API:
  • Più funzioni N-API per la gestione degli errori sono state modificate per supportare l'assegnazione dei codici di errore.
  • REPL:
  • Il supporto per il completamento automatico di require () è stato migliorato.
  • Utilità:
  • Lo standard di codifica WHATWG (TextDecoder e TextEncoder) è stato implementato come funzionalità sperimentale.

Novità della versione 8.1.3:

  • Stream Sono state corrette due regressioni con il modulo stream:
  • L'evento di fine verrà sempre emesso dopo l'evento di errore se ne viene emesso uno: [0a9e96e86c] # 13850
  • In modalità oggetto, gli stream leggibili possono ora utilizzare di nuovo undefined. [5840138e70] # 13760

Novità nella versione 8.1.2:

  • Corregge le proprietà break.release nel 8.1.1 causando l'errore di compilare componenti aggiuntivi nativi su piattaforme diverse da Windows. Questa è una correzione nel processo di generazione di Node.js quindi non ci sono ulteriori commit di codice inclusi in cima alla 8.1.1.

Novità nella versione 7.7.1:

  • [c8e34b61f6] - build: aggiungi i file header di src / tracing mancanti (Daniel Bevenius) # 10851
  • [96f55f9e59] - src: move trace_event.h include all'intestazione interna (Ben Noordhuis) # 10959
  • [30c80cbe6f] - src: ripara pulizia TracingController (Jason Ginchereau) # 10623
  • [b89b2a7d36] - src: inizializza sempre il controller di tracciamento nell'agente (Matt Loring) # 10507
  • [54e55e05ca] - test: rendere i dati test-intl-no-icu più robusti (Michael Zasso) # 10992
  • [7b253eb3ed] - test: aumenta il rigore per test-trace-event (Rich Trott) # 11065
  • [3dc4a5f1f4] - tracing: fix - Avviso campo privato -utilizzato (Santiago Gimeno) # 10416
  • [8a918bf411] - traccia: fix-warning Wreorder (Santiago Gimeno) # 10416

Novità nella versione 7.4.0:

  • buffer:
  • Migliora le prestazioni dell'allocazione del buffer di ~ 11%. (Brian White) # 10443
  • Migliora le prestazioni di Buffer.from () di ~ 50%. (Brian White) # 10443

  • Eventi
  • : migliora le prestazioni di EventEmitter.once () di ~ 27%. (Brian White) # 10445
  • fs: consente di passare Uint8Array ai metodi fs in cui sono supportati i buffer. (Anna Henningsen) # 10382
  • http: migliora le prestazioni del server http di ~ 7%. (Brian White) # 6533
  • npm: upgrade a v4.0.5 (Kat Marchan) # 10330

Novità nella versione 7.2.1:

  • buffer:
  • Ripristinato il deprecation di runtime di chiamare Buffer () senza nuovo. (Anna Henningsen) # 9529
  • Risolto il buffer.transcode () per le codifiche di caratteri a byte singolo in UCS2. (Anna Henningsen) # 9838
  • promessa: --trace-warnings ora produce utili stacktraces per gli avvisi Promise. (Anna Henningsen) # 9525
  • repl: corretto un bug che impediva il corretto parsing delle funzioni del generatore. (Teddy Katz) # 9852
  • V8: corretta un'istanza significativa della regressione delle prestazioni. (Franziska Hinkelmann) # 9730

Novità nella versione 7.2.0:

  • crypto: i metodi Decipher setAuthTag () e setAAD ora restituiscono questo.
  • dns: implementato {ttl: true} per resolve4 () e resolve6 ().
  • libuv: upgrade a v1.10.1
  • Risolto un potenziale overflow del buffer durante la scrittura dei dati sulla console su Windows 10. (CVE-2016-9551)
  • processo: aggiunta una nuova proprietà esterna ai dati restituiti da memoryUsage ().
  • tls: risolta una perdita di memoria quando le scritture erano in coda sulla connessione TLS che era stata distrutta durante l'handshake.
  • V8 (dep): aggiornamento a v5.4.500.43
  • v8: i dati restituiti da getHeapStatistics () ora includono tre nuovi campi: malloced_memory, peak_malloced_memory e does_zap_garbage.

Novità della versione nella versione 6.4.0:

  • build: i simboli zlib e i simboli OpenSSL aggiuntivi sono ora esposti sulle piattaforme Windows. (Alex Hultman) # 7983 e # 7576
  • child_process, cluster: i processi figlio biforcati e i cluster worker ora supportano la configurazione di stdio. (Colin Ihrig) # 7811 e # 7838
  • child_process: argv [0] può ora essere impostato su valori arbitrari nei processi spawn. (Pat Pannuto) # 7696
  • fs: fs.ReadStream ora espone il numero di byte letti finora. (Linus Unneback) # 7942
  • repl: REPL ora supporta la modalità editor. (Prince J Wesley) # 7275
  • util: inspect () può ora essere configurato globalmente usando util.inspect.defaultOptions. (Roman Reiss) # 8013

Novità nella versione 6.3.0:

  • buffer: aggiunto buffer.swap64 () per integrare swap16 () & amp; swap32 (). (Zach Bjornson) # 7157
  • build: sono state aggiunte nuove opzioni di configurazione per la creazione di Node.js come libreria condivisa. (Stefan Budeanu) # 6994
  • Le opzioni sono: --shared, --without-v8-platform & amp; --without-bundle-v8.
  • crypto: i certificati di root sono stati aggiornati. (Ben Noordhuis) # 7363
  • debugger: l'indirizzo del server è ora configurabile tramite --debug = :. (Ben Noordhuis) # 3316
  • npm: versione aggiornata npm alla v3.10.3 (Kat Marchan) # 7515 & amp; (Rebecca Turner) # 7410
  • readline: aggiunta l'opzione prompt al costruttore readline. (Evan Lucas) # 7125
  • repl / vm: sigint / ctrl + c uscirà da loop infiniti senza arrestare l'istanza Node.js. (Anna Henningsen) # 6635
  • src
  • Aggiunto un nodo :: API C ++ pubblica FreeEnvironment. (Cheng Zhao) # 3098
  • Richiesto refactored ('costanti'), le costanti sono ora disponibili direttamente dai rispettivi moduli. (James M Snell) # 6534
  • stream: prestazioni readable.read () migliorate fino al 70%. (Brian White) # 7077

  • Timer
  • : setImmediate () è ora fino al 150% più veloce in alcune situazioni. (Andras) # 6436
  • util: aggiunta un'opzione breakLength a util.inspect () per controllare il modo in cui gli oggetti vengono formattati attraverso le linee. (cjihrig) # 7499
  • v8-inspector: è stato aggiunto il supporto sperimentale per il debug di Node.js tramite il protocollo inspector. (Ali Ijaz Sheikh) # 6792
  • Nota: questa funzione è sperimentale e potrebbe essere modificata o rimossa.
  • Puoi provare questa funzione eseguendo Node.js con il flag --inspect.

Novità nella versione 6.0.0:

  • Buffer:
  • I nuovi costruttori di buffer sono stati aggiunti # 4682 e # 5833.
  • I costruttori esistenti di Buffer () e SlowBuffer () sono stati deprecati nei documenti n. 4682 e 5833.
  • Le API del buffer precedentemente deprecate sono state rimosse # 5048, # 4594.
  • Miglioramento della gestione degli errori n. 4514.
  • È stato aggiunto il metodo Buffer.prototype.lastIndexOf () # 4846.
  • Cluster:
  • Worker emesso come primo argomento nell'evento 'messaggio' # 5361.
  • La proprietà worker.exitedAfterDisconnect sostituisce worker.suicide # 3743.
  • Console:
  • Chiamare console.timeEnd () con un'etichetta sconosciuta ora emette un avviso di processo anziché lanciare # 5901.
  • Crypto:
  • Miglioramento della gestione degli errori n. 3100, n. 5611.
  • Associazioni di classi di certificati semplificate n. 5382.
  • Controllo migliorato sulla modalità FIPS # 5181.
  • L'overloading di pbkdf2 digest è deprecato # 4047.
  • Dipendenze:
  • Reintroduci il supporto per la compilazione di c-ares condivisi n. 5775.
  • V8 aggiornato a 5.0.71.35 # 6372.
  • DNS:
  • Aggiungi l'API dns.resolvePtr () per eseguire query sui record PTR DNS n. 4921.
  • Domini:
  • Cancella stack quando nessun gestore errori # 4659.
  • Eventi:
  • L'oggetto EventEmitter.prototype._events non eredita più da Object.prototype # 6092.
  • I metodi EventEmitter.prototype.prependListener () ed EventEmitter.prototype.prependOnceListener () sono stati aggiunti # 6032.
  • File System:
  • I metodi fs.realpath () e fs.realpathSync () sono stati aggiornati per utilizzare un'implementazione basata su libuv più efficiente. Questa modifica include la rimozione dell'argomento della cache e il metodo può generare nuovi errori # 3594.
  • Le API di FS ora possono accettare e restituire percorsi come Buffers # 5616.
  • Gestione degli errori e miglioramenti nella verifica del tipo # 5616, # 5590, # 4518, # 3917.
  • l'interfaccia di stringa di fs.read è obsoleta # 4525.
  • HTTP:
  • 'clientError' può ora essere utilizzato per restituire errori personalizzati da un server HTTP # 4557.
  • Moduli:
  • La directory corrente ora ha la priorità per le ricerche locali # 5689.
  • I collegamenti simbolici vengono mantenuti quando richiedono i moduli # 5950.
  • netto:
  • I suggerimenti DNS non impostano più implicitamente # 6021.
  • Miglioramento della gestione degli errori e del controllo dei tipi # 5981, # 5733, # 2904.
  • OS X:
  • MACOSX_DEPLOYMENT_TARGET è stato espulso fino a 10.7 # 6402.
  • Percorso:
  • Controllo dei tipi migliorato # 5348.
  • Processo:
  • Inserisci l'API di avviso sui processi 4782.
  • Genera un'eccezione quando la funzione non passata passa a nextTick # 3860.
  • Querystring:
  • L'oggetto restituito da querystring.parse () non eredita più da Object.prototype # 6055.
  • Readline:
  • Le informazioni chiave vengono emesse incondizionatamente # 6024.
  • La cronologia ora può essere disabilitata in modo esplicito # 6352.
  • REPL:
  • L'assegnazione a _ emetterà un avviso # 5535.
  • Le espressioni non saranno più completate quando eval fallisce # 6328.
  • Timer:
  • Fail early quando callback non è una funzione # 4362.
  • Streams:
  • null ora è un blocco non valido per scrivere in modalità oggetto # 6170.
  • TLS:
  • Rinomina 'clientError' a 'tlsClientError' # 4557.
  • SHA1 utilizzato per sessionIdContext # 3866.
  • TTY:
  • Il wrapper setRawMode precedentemente deprecato viene rimosso # 2528.
  • URL:
  • Nome utente e password verranno eliminati da url.resolve () se l'host cambia # 1480.
  • Util:
  • Passa alla formattazione degli oggetti Error # 4582.
  • Il metodo util._extend () è stato deprecato # 4903
  • Il metodo util.log () è stato deprecato # 6161.
  • Windows:
  • Windows XP e Vista non sono più supportati # 5167.
  • Zlib:
  • Sono stati apportati numerosi miglioramenti all'elaborazione di Zlib # 5883 e # 5707.

Requisiti :

  • Python

Programmi simili

Agena
Agena

22 Jun 18

Vala
Vala

16 Aug 18

CeGCC
CeGCC

3 Jun 15

Glulxe
Glulxe

11 May 15

Altri software di sviluppo Joyent, Inc.

SmartOS
SmartOS

17 Aug 18

Commenti a Node.js

I commenti non trovato
Aggiungi commento
Accendere le immagini!