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à: 282

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

Chicken
Chicken

17 Jul 15

daot
daot

11 May 15

Spackager
Spackager

14 Apr 15

bigloo
bigloo

20 Feb 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!