Node.js

Software kuvakaappaus:
Node.js
Ohjelmiston tiedot:
Versio: 10.7.0 Päivitetty
Lähetyksen päivämäärä: 17 Aug 18
Kehittäjä: Joyent, Inc.
Lupa: Vapaa
Suosio: 123

Rating: 4.0/5 (Total Votes: 1)

Node.js on avoin lähdekoodi ja täysin ilmainen ohjelmisto, joka mahdollistaa web-kehittäjien rakentaa skaalautuvia ja nopeita verkko-ohjelmia. Node.js-ohjelmisto perustuu Chromen JavaScript-suoritusaikaan, ja se on erittäin tehokas ja kevyt, varsinkin koska se käyttää ei-estävää, tapahtumavetoista I / O-mallia.


Yläasema palvelinpuolen JavaScript-koodin suorittamiseen

Node.js pidetään parhaillaan palvelimen puoleisen JavaScript-koodin ylläpitäjänä, jota käytetään tuotannossa suurissa yrityksissä kuten Google, eBay, Yahoo, LinkedIn, Microsoft, Cloud9 ja paljon muuta.


Pakollinen esimerkki

Seuraava koodi luo yksinkertaisen WWW-palvelimen, joka vastaa "Hello World" -toiminnolla jokaisesta pyynnöstä.

var http = vaatia ('http');

http.createServer (funktio (req, res) {

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

res.end ('Hello Worldn');

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

console.log ('Palvelin käynnissä osoitteessa http://127.0.0.1:1337/');

Jotta HTTP-palvelin voidaan suorittaa, sinun on yllä oleva koodi tiedostoon & ldquo; example.js & rdquo; (ilman lainausmerkkejä) ja suorita se solmupyynnön avulla pääteemulaattorilta:

% solmua example.js

Palvelin, joka toimii osoitteessa http://127.0.0.1:1337/


Tuetut käyttöjärjestelmät

Node.js on monen alustan sovellus, joka on testattu menestyksekkäästi lukuisissa GNU / Linux-jakeluissa, mukaan lukien Debian, Ubuntu, Arch Linux, Fedora, Red Hat Enterprise Linux, openSUSE, Mageia, Slackware ja muut kuten kaupallisissa Mac OS X- ja Microsoft Windows -käyttöjärjestelmissä. Tällä hetkellä tuetaan sekä 64-bittisiä että 32-bittisiä käskyjoukon arkkitehtuureja.


Kannen alla, vaatimukset ja saatavuus

Kuten mainittiin, tämä on monen alustan ohjelmisto. Se voidaan ladata valmiiksi asennettuina asennusohjelmina Mac OS X-, GNU / Linux- ja Microsoft Windows -käyttöjärjestelmille sekä yleislähdetiedosto, joka voidaan koota ja asentaa lähes mihin tahansa käyttöjärjestelmään, johon Python on tuettu.

Uutta :

  • konsoli:
  • Console.timeLog () -menetelmä on toteutettu. # 21312
  • deps:
  • Päivitä versioon libuv 1.22.0. # 21731
  • Päivitä ICU 62.1 (Unicode 11, CLDR 33.1). # 21728
  • http:
  • Lisätty tuki aikakatkaisun ja agentin vaihtoehtojen siirtämiseen http.requestille. # 21204
  • tarkastaja:
  • Näytä alkuperäinen konsoli-sovellusliittymä require ('inspector'). # 21659
  • napi:
  • Lisätty kokeellinen tuki toiminnoille, jotka käsittelevät suuria numeroita. # 21226
  • prosessi:
  • Process.hrtime.bigint () -menetelmä on toteutettu. # 21256
  • Lisätty --title komentorivi argumentti asettaa prosessin otsikko käynnistyksen yhteydessä. # 21477
  • trace_events:
  • Lisätty prosessinimen metatiedot. # 21477
  • Lisätty uusia yhteistyökumppaneita
  • codebytere - Shelley Vohr

    • Täydellinen tuki N-API: lle

    Uutta

  • Helppo aloittaa Time-Travel -vianmääritystoiminnon avulla uuden Visual Studio Code Extensionin avulla
  • TTD-tuki generaattoreille ja asynkäyttötoiminnoille
  • Tuki Inspector-protokollalle
  • Lisääntynyt vakaus ja muut erilaiset parannukset

Uutta versiona:

  • async_hooks:
  • lisää jäljitystuotteet async_hooks (Andreas Madsen) # 15538
  • lisää palvelintyypit verkkopalvelimeen (Andreas Madsen) # 17157
  • konsoli:
  • console.debug voidaan nyt käyttää tarkastajan (Benjamin Zaslavsky) ulkopuolella # 17033
  • deps:
  • Päivitä libuv 1.18.0: ään (cjihrig) # 17282
  • korjaustiedosto V8 - 6.2.414.46 (Myles Borins) # 17206
  • moduuli:
  • module.builtinModules palauttaa luettelon sisäänrakennetuista moduuleista (Jon Moss) # 16386
  • n-api:
  • lisää avustaja addonille saadaksesi tapahtumasilmukan (Anna Henningsen) # 17109
  • prosessi:
  • prosessi.setUncaughtExceptionCaptureCallback voidaan nyt muokata käyttäytymiseen - "unlocked-exception" (Anna Henningsen) # 17159
  • Signaalinkäsittelylaite voi nyt vastaanottaa käsittelijän laukaisevan signaalikoodin. (Robert Rossmann) # 15606
  • src:
  • Sulautetut käyttäjät voivat nyt käyttää Node :: CreatePlatformia luomaan NodePlatform (Cheng Zhao) -esimerkin # 16981
  • stream:
  • writeable.writableHighWaterMark ja readable.readableHighWaterMark palauttavat arvot stream-objektin instantiated (Calvin Metcalf) # 12860
  • Lisätty uusia yhteistyökumppaneita
  • maclover7 Jon Moss
  • guybedford Guy Bedford
  • hashseed Yang Guo

    • crypto

Uutta versiossa 9.2.0

  • Tukirakennus sekä 1.1.0 että 1.0.2 (David Benjamin) # 16130
  • FS:
  • fs.realpathSync.native ja fs.realpath.native ovat nyt esillä (Ben Noordhuis) # 15776
  • prosessi:
  • näytä prosessi.ppid (cjihrig) # 16839
  • Uutta versio 8.5.0:

    • build:
    • Valokuvia on nyt otettu uudelleen käyttöön V8 # 14875
    • -kohdassa
    • konsoli:
    • Toteuta minimaalinen console.group (). # 14910
    • deps:
    • Päivitä libuv 1.14.1: ään # 14866
    • Päivitä nghttp2 v1.25.0 # 14955
    • dns:
    • Lisää todellinen vaihtoehto dns.lookup (): iin. Kun tosi on, DNS-resolverin tulokset siirretään as-is -muodossa ilman uudelleenjärjestelyä, jonka mukaan Node.js muussa tapauksessa tuo IPv4-osoitteet ennen IPv6-osoitteita. # 14731
    • FS:
    • Lisää fs.copyFile ja fs.copyFileSync, joka mahdollistaa tiedostojen tehokkaamman kopioinnin. # 15034
    • tarkastaja:
    • Ota käyttöön asynkolun jäljet ​​# 13870
    • moduuli:
    • Lisää tukea ESM: lle. Tämä on tällä hetkellä --experimental-modules-lippua takana ja vaatii .mjs-laajennuksen. solmu --experimental-modules index.mjs # 14369
    • napi:
    • toteuta lupaus # 14365
    • OS:
    • Lisää CIDR-merkinnän tuki verkonInterfaces () -menetelmään. # 14307
    • perf_hooks:
    • Suoritusajoitus-sovellusliittymän ensimmäinen toteutus Node.js. Tämä on sama Suoritusajoitus-sovellusliittymä, jota modernit selaimet käyttävät useilla Node.js-ominaisuuksilla. Käyttäjän ajoitusmerkki () ja mittaus () -sovellusliittymät toteutetaan. # 14680
    • TLS:
    • useita PFX-tiedostoja createSecureContext # 14793
    • Lisätty uusia yhteistyökumppaneita:
    • BridgeAR - Ruben Bridgewater

    Uutta versiossa 8.3.0:

    • V8-moottori on päivitetty versioon 6.0, jolla on merkittävästi muuttunut tehokkuusprofiili.
    • Muita merkittäviä muutoksia:
    • DNS:
    • Riippumattomat DNS-resolveritapahtumat tuetaan nyt, ja ne tukevat vastaavien pyyntöjen peruuttamista.
    • N-API:
    • Virheenkäsittelyn useat N-API-toiminnot on muutettu tukemaan virhekoodien osoittamista.
    • KORV:
    • Vaatimuksen () autentikoinnin tuki on parannettu.
    • Utilities:
    • WHATWG-koodausstandardi (TextDecoder ja TextEncoder) on toteutettu kokeelliseksi ominaisuudeksi.

    Uutta versiossa 8.1.3:

    • Stream Kaksi regressiota stream-moduulilla on korjattu:
    • Lopetustapahtuma lähetetään aina virhetapahtuman jälkeen, jos lähetetään: [0a9e96e86c] # 13850
    • Objektimuodossa luettavat tietovälineet voivat nyt käyttää määrittelemätöntä uudelleen. [5840138e70] # 13760

    Uutta versiossa 8.1.2:

    • Korjaa rikkoutuneet prosessin.tulostusominaisuudet kohdassa 8.1.1, mikä aiheuttaa epäonnistuneiden natiivien lisäosien kääntämisen muilla alustoilla kuin Windowsissa. Tämä on korjaus Node.js -rakentamisprosessissa, joten 8.1.1: n yläpuolella ei ole ylimääräisiä koodikomiteoita.

    Uutta versiossa 7.7.1:

    • [c8e34b61f6] - build: Lisää puuttuvat src / jäljitysotsikot (Daniel Bevenius) # 10851
    • [96f55f9e59] - src: siirrä trace_event.h sisällytettävä sisäiseen otsikkoon (Ben Noordhuis) # 10959
    • [30c80cbe6f] - src: korjaa TracingController cleanup (Jason Ginchereau) # 10623
    • [b89b2a7d36] - src: alusta aina jäljitysohjain agenttiin (Matt Loring) # 10507
    • [54e55e05ca] - testi: tee test-intl-no-icu-data vankempi (Michael Zasso) # 10992
    • [7b253eb3ed] - testi: lisää testausjäljen (Rich Trott) tarkkuutta # 11065
    • [3dc4a5f1f4] - jäljitys: korjaus -Wunused-private-field varoitus (Santiago Gimeno) # 10416
    • [8a918bf411] - jäljitys: korjaus -Wreorder-varoitus (Santiago Gimeno) # 10416

    Uutta versio 7.4.0:

    • puskuri:
    • Puskurijakelun tehokkuuden parantaminen ~ 11%: lla. (Brian White) # 10443
    • Paranna Buffer.from (): n suorituskykyä ~ 50%: lla. (Brian White) # 10443
    • tapahtumat: Parantaa EventEmitter.once (): n suorituskykyä ~ 27%: lla. (Brian White) # 10445
    • fs: Salli kulkea Uint8Array fs-menetelmille, joissa Buffereita tuetaan. (Anna Henningsen) # 10382
    • http: Parantaa http-palvelimen suorituskykyä ~ 7%: lla. (Brian White) # 6533
    • npm: Päivitä versioon v4.0.5 (Kat Marchan) # 10330

    Uutta versio 7.2.1:

    • puskuri:
    • Vastasi soittavan puskurin () käyttämättömän käytön hylkäämisen ilman uutta. (Anna Henningsen) # 9529
    • Kiinteä buffer.transcode () yksitavuisen merkkikoodauksen UCS2: lle. (Anna Henningsen) # 9838
    • lupaus: --Trace-varoitukset tuottavat nyt hyödyllisiä stacktraceja Promise-varoituksille. (Anna Henningsen) # 9525
    • repl: Korjattu virhe, joka estää generaattorifunktioiden oikean jäsentämisen. (Teddy Katz) # 9852
    • V8: Korjattu merkittävä suorituskyvyn regressio. (Franziska Hinkelmann) # 9730

    Uutta versio 7.2.0:

    • crypto: Palautusmenetelmät setAuthTag () ja setAAD nyt palauttavat tämän.
    • dns: Toteutettu {ttl: true} ratkaise4 () ja resolve6 ().
    • libuv: Päivitä versioon v1.10.1
    • Korjattu potentiaalinen puskurin ylivuoto kirjoitettaessa tietoja konsoliin Windows 10: ssä. (CVE-2016-9551)
    • prosessi: lisätään uusi ulkoinen ominaisuus muistiin tallennettuihin tietoihin ().
    • tls: Kiinteä muistivuoto, kun kirjoitukset oli jonossa TLS-yhteydellä, joka tuhoutui kättelyn aikana.
    • V8 (dep): Päivitä versioon v5.4.500.43
    • v8: getHeapStatistics (): n palauttamat tiedot sisältävät nyt kolme uutta kenttää: malloced_memory, peak_malloced_memory ja does_zap_garbage.

    Uutta versio 6.4.0:

    • rakentaa: zlib-symboleja ja muita OpenSSL-symbolia paljastetaan nyt Windows-alustoilla. (Alex Hultman) # 7983 ja # 7576
    • child_process, klusteri: Forked-lapsiprosessit ja klusterityöntekijät tukevat nyt stdio-kokoonpanoa. (Colin Ihrig) # 7811 ja # 7838
    • child_process: argv [0] voidaan nyt asettaa mielivaltaisille arvoille kuteissa. (Pat Pannuto) # 7696
    • fs: fs.ReadStream paljastaa nyt tähän mennessä lukemien tavujen määrän. (Linus Unneback) # 7942
    • repl: REPL tukee nyt editointitilaa. (Prince J Wesley) # 7275
    • util: inspect () voidaan nyt määrittää maailmanlaajuisesti käyttämällä util.inspect.defaultOptions-asetuksia. (Roman Reiss) # 8013

    Uutta versio 6.3.0:

    • puskurin: Lisätty buffer.swap64 () täydentää swap16 () & amp; swap32 (). (Zach Bjornson) # 7157
    • build: Uusia konfigurointivaihtoehtoja on lisätty rakentamaan Node.js jaettua kirjastoa. (Stefan Budeanu) # 6994
    • Vaihtoehdot ovat: - jaettu, - ilman v8-alustaa & amp; --without niputetaan-V8.
    • crypto: Root-todistukset on päivitetty. (Ben Noordhuis) # 7363
    • debuggeri: Palvelimen osoite on nyt konfiguroitavissa --debug = :. (Ben Noordhuis) # 3316
    • npm: Päivitetty npm v3.10.3 (Kat Marchan) # 7515 & amp; (Rebecca Turner) # 7410
    • readline: Lisätty nopea vaihtoehto readline-konstruktorille. (Evan Lucas) # 7125
    • repl / vm: sigint / ctrl + c katkeaa ääretön silmukoita pysäyttämättä Node.js-instanssia. (Anna Henningsen) # 6635
    • src:
    • Lisätty solmu :: FreeEnvironment julkinen C ++ API. (Cheng Zhao) # 3098
    • Refactored vaatii ("vakiot"), vakioita on nyt saatavilla suoraan niiden moduuleista. (James M Snell) # 6534
    • stream: Parannettu readable.read () -suorituskyky jopa 70%: lla. (Brian White) # 7077
    • ajastimet: setImmediate () on nyt jopa 150% nopeampi joissakin tilanteissa. (Andras) # 6436
    • util: Lisätty breakLength-vaihtoehto util.inspect () -toimintoon sen määrittämiseksi, miten objekteja muotoillaan rivien välille. (cgjig) # 7499
    • v8-tarkastaja: Kokeellinen tuki on lisätty Node.js: n virheenkorjaukseen tarkistusprotokollan kautta. (Ali Ijaz Sheikh) # 6792
    • Huomaa: tämä ominaisuus on kokeellinen ja sitä voidaan muuttaa tai poistaa.
    • Voit kokeilla tätä toimintoa suorittamalla Node.js: n --inspect lippu.

    Uutta versiossa 6.0.0:

    • Puskuri:
    • Uusia puskurin rakentajia on lisätty # 4682 ja # 5833.
    • Nykyiset puskurin () ja SlowBuffer () -rakentajat on hylätty asiakirjoissa # 4682 ja # 5833.
    • Aikaisemmin vanhentuneet puskurin sovellusliittymät poistetaan # 5048, # 4594.
    • Parannettu virheenkäsittely # 4514.
    • Buffer.prototype.lastIndexOf () -menetelmä on lisätty # 4846.
    • Cluster:
    • Työntekijä lähetetään ensimmäiseksi argumentiksi "viesti" -tapahtumassa # 5361.
    • Work.exitedAfterDisconnect-ominaisuus korvaa työntekijän.suicide # 3743.
    • Console:
    • Soittaminen console.timeEnd () tuntemattomalla etiketillä lähettää prosessiharjoituksen sijasta # 5901.
    • Crypto:
    • Parannettu virheenkäsittely # 3100, # 5611.
    • Yksinkertaistettu varmenteen luokat-sidos # 5382.
    • Parannettu FIPS-tilan valvonta # 5181.
    • pbkdf2 pilkko ylikuormitus on vanhentunut # 4047.
    • riippuvuuksien
    • Palauta yhteinen c-ares -rakennustuki # 5775.
    • V8 päivitetty versioon 5.0.71.35 # 6372.
    • DNS:
    • Lisää dns.resolvePtr () API kyselyyn pelkkää DNS PTR -tietoketta # 4921.
    • Verkkotunnukset:
    • Tyhjennä pino, kun virheenkäsittelijää ei ole # 4659.
    • Tapahtumat:
    • EventEmitter.prototype._events-objekti ei enää perinnäkään Object.prototype # 6092: sta.
    • EventEmitter.prototype.prependListener () ja EventEmitter.prototype.prependOnceListener () -menetelmät on lisätty # 6032.
    • Tiedostojärjestelmä:
    • Fs.realpath () ja fs.realpathSync () -menetelmät on päivitetty käyttämään tehokkaampaa libuv-pohjaista toteutusta. Tämä muutos sisältää kätkön argumentin poistamisen ja menetelmä voi heittää uusia virheitä # 3594.
    • FS apis voi nyt hyväksyä ja palauttaa polut Buffers # 5616: ksi.
    • Virheiden käsittely ja tyypin tarkistusparannukset # 5616, # 5590, # 4518, # 3917.
    • fs.readin merkkijono rajapinta on vanhentunut # 4525.
    • HTTP:
    • "ClientError" voidaan nyt käyttää palauttamaan mukautetut virheet HTTP-palvelimelta # 4557.
    • Moduulit:
    • Nykyinen hakemisto on nyt ensisijainen paikallisten haun # 5689 osalta.
    • Symboliset linkit säilyvät, kun vaaditaan moduuleja # 5950.
    • Net:
    • DNS-vihjeet eivät enää implisiittisesti asetu # 6021.
    • Parannettu virheenkäsittely ja tyyppitarkistus # 5981, # 5733, # 2904.
    • OS X:
    • MACOSX_DEPLOYMENT_TARGET on kasaantunut jopa 10,7 # 6402.
    • Polku:
    • Parannettu tyyppikysely # 5348.
    • Process:
    • Esitä prosessin varoituksia API # 4782.
    • Poimi, kun toiminto ei ole toiminnassa siirretty NextTick # 3860: een.
    • QueryString:
    • querystring.parse () palauttaa objektin ei enää peri Object.prototype # 6055: sta.
    • Readline:
    • Tärkeät tiedot lähetetään ehdoitta # 6024.
    • Historia voidaan nyt nimenomaan poistaa käytöstä # 6352.
    • KORV:
    • Tehtävä _ lähettää varoituksen # 5535.
    • Lausekkeet eivät enää täyty, kun eval epäonnistuu # 6328.
    • Timers:
    • Varo aikaisin, kun soittopyyntö ei ole toiminto # 4362.
    • Virrat:
    • null on nyt virheellinen komento, joka kirjoittaa objektimuotoon # 6170.
    • TLS:
    • Muuta 'clientError' uudelleen 'tlsClientError' # 4557.
    • SHA1 käytetään sessionIdContext # 3866: lle.
    • TTY:
    • Aiemmin vanhentunut setRawMode-kääre poistetaan # 2528.
    • URL:
    • Käyttäjänimi ja salasana pudotetaan url.resolve () jos isäntä muuttuu # 1480.
    • Util:
    • Muutokset virheisiin objektin muotoiluun # 4582.
    • Util._extend () -menetelmä on hylätty # 4903
    • Util.log () -menetelmä on hylätty # 6161.
    • Windows:
    • Windows XP ja Vista eivät ole enää tuettuja # 5167.
    • Zlib:
    • Useita parannuksia on tehty Zlib-käsittelyyn # 5883 ja # 5707.

    Vaatimukset

    • Python

    Vastaavia ohjelmistoja

    R
    R

    17 Feb 15

    Pharo
    Pharo

    20 Feb 15

    Arcueid
    Arcueid

    20 Feb 15

    Muu ohjelmistojen kehittäjä Joyent, Inc.

    SmartOS
    SmartOS

    17 Aug 18

    Kommentit Node.js

    Kommentteja ei löytynyt
    Lisää kommentti
    Ota kuvia!