Kuinka kirjoittaa ensimmäinen Node.js-sovellus Linuxissa


Verkkokehitystrendit ovat muuttuneet dramaattisesti viime vuosien aikana, ja verkkokehittäjänä on tärkeää pysyä ajan tasalla uusimpien teknologioiden kanssa, jotta voit olla pelisi huipulla.

JavaScript on tällä hetkellä trendikkäin ohjelmointikieli. se on epäilemättä suosituin täyden pinon kehittäjien käyttämä tekniikka.

JavaScript-verkkokehyksistä on tullut maaginen ratkaisu nopeampaan verkkokehitykseen absoluuttisella tehokkuudella, turvallisuudella ja minimoiduilla kustannuksilla. Olen melko varma, että olet kuullut Node JavaScriptistä (jota kutsutaan yleisesti nimellä Node.js tai yksinkertaisesti Node), siitä on paljon kohua. internetissä.

Tässä artikkelissa näytän sinulle, kuinka voit aloittaa sovellusten kehittämisen JavaScriptillä käyttämällä Node.js:ää Linuxissa. Mutta ensin luetaan lyhyesti Node.js.

Mikä on Node.js?

Node.js on avoimen lähdekoodin, kevyt ja tehokas JavaScript-ajonaika, joka on rakennettu Chromen V8 JavaScript-moottoriin. Se on suunniteltu ilman säikeitä (yksisäikeinen) ja siinä on samanlainen toteutus kuin Twisted, verkkomoottori, joka on rakennettu Pythonilla tai Event Machinella, tapahtumankäsittelykirjastolla Ruby-ohjelmille.

Node.js:n ydin perustuu tapahtumalähtöiseen ohjelmointiin. Ohjelmoijan tulee siksi ymmärtää, mitä tapahtumia on saatavilla ja miten niihin voi vastata.

Paketinhallinta Node.js-kohdassa

Node.js käyttää JavaScript -pakettien hallintaa ja ekosysteemiä nimeltä "npm", joka sisältää valtavan kokoelman ilmaisia avoimen lähdekoodin kirjastoja. Se tukee modulaarista ohjelmistokehitystä. Voit käyttää sitä solmupakettien asentamiseen, jakamiseen, koodin jakamiseen ja pakettiriippuvuuksien hallintaan.

Miksi Node.js on tärkeä?

Node.js on tehokas ja siksi tärkeä seuraavista syistä:

  • Se käyttää asynkronista tapahtumapohjaista, estämätöntä I/O-suoritusmallia, joka parantaa sovelluksen suorituskykyä ja tukee skaalautuvuutta todellisissa verkkosovelluksissa.
  • Se on yksisäikeinen, joten se voi käyttää vain yhtä CPU:ta kerrallaan.
  • Node.js-verkkosovellus on täydellinen verkkopalvelin, esimerkiksi Nginx tai Apache.
  • Se tukee säikeitä child_process.fork()-sovellusliittymän kautta aliprosessien synnyttämiseen ja tarjoaa myös klusterimoduulin.

Tämän lyhyen esittelyn avulla sinun täytyy olla innokas kirjoittamaan ensimmäinen JavaScript-ohjelmasi. Ensin sinun on kuitenkin asennettava Node.js- ja NPM-paketit Linux-järjestelmääsi seuraavan oppaan avulla.

  1. Asenna uusin Nodejs- ja NPM-versio Linux-järjestelmiin

Kuinka luoda ensimmäinen Node.js-sovellus Linuxissa

Kun olet asentanut Node.js:n, olet valmis aloittamaan. Aloita luomalla hakemisto, joka tallentaa sovellustiedostosi.

sudo mkdir -p /var/www/myapp

Siirry sitten kyseiseen hakemistoon ja luo package.json-tiedosto sovelluksellesi. Tämä tiedosto on pieni dokumentaatio projektillesi: projektin nimi, tekijä, luettelo paketeista, joista se riippuu ja niin edelleen.

cd /var/www/myapp
npm init

Tämä esittää sinulle useita kysymyksiä, vastaa vain alla kuvatulla tavalla ja paina [Enter]. Huomaa, että tärkeimmät asiat package.json-tiedostossa ovat nimi- ja versiokentät, kuten alla selitetään.

  • paketin nimi – sovelluksesi nimi, oletuksena hakemiston nimi.
  • versio – sovelluksesi versio.
  • kuvaus – kirjoita lyhyt kuvaus sovelluksellesi.
  • Entry point – määrittää suoritettavan oletuspakettitiedoston.
  • testikomento – käytetään testiskriptin luomiseen (oletuksena tyhjä komentosarja).
  • git-arkisto – määritä Git-arkisto (jos sinulla on sellainen).
  • avainsanat – aseta avainsanoja, jotka ovat tärkeitä muille käyttäjille pakettisi tunnistamisessa npm:ssä.
  • tekijä – määrittää tekijän nimen, laita nimesi tähän.
  • lisenssi – määritä käyttöoikeus sovelluksellesi/pakettillesi.

Luo seuraavaksi server.js-tiedosto.

sudo vi server.js

Kopioi ja liitä alla oleva koodi siihen.

var http = require('http');
http.createServer(function(req,res){
        res.writeHead(200, { 'Content-Type': 'text/plain' });
        res.end('Hello World!');
}).listen(3333);
console.log('Server started on localhost:3333; press Ctrl-C to terminate...!');

Käynnistä seuraavaksi sovellus seuraavalla komennolla.

node server.js
OR
npm start

Avaa seuraavaksi verkkoselain ja käytä verkkosovellustasi, joka ei tee muuta kuin tulostaa merkkijonon ”Hei maailma! ” käyttämällä osoitetta:

http://localhost:3333

Yllä olevassa koodissamme päätapahtuma, jota käsitellään, on HTTP-pyyntö HTTP-moduulin kautta.

Nodejs HTTP-moduuli

Node.js:ssä moduulit ovat enemmän kuin JavaScript-kirjastoja, ne sisältävät toimintoja, joita voit käyttää uudelleen sovelluksessasi. Voit käyttää sisäänrakennettuja moduuleja, kolmekymmentä puoluemoduulia tai luoda omia.

Voit kutsua moduuleja sovelluksessasi käyttämällä vaadi-toimintoa kuvan mukaisesti.

var http = require('http');

Kun http-moduuli on mukana, se luo palvelimen, joka kuuntelee tiettyä porttia (tässä esimerkissä 3333). http.creatServer-menetelmä luo todellisen http-palvelimen, joka hyväksyy funktion (joka kutsutaan, kun asiakas yrittää käyttää sovellusta) argumenttina.

http.createServer(function(req,res){
        res.writeHead(200, { 'Content-Type': 'text/plain' });
        res.end('Hello World!');
}).listen(3333);

Toiminnossa http.createServer on kaksi argumenttia: req(request) ja res(response). Req-argumentti on käyttäjän tai asiakkaan pyyntö ja res-argumentti lähettää vastauksen asiakkaalle.

res.writeHead(200, { 'Content-Type': 'text/plain' });		#This is a response HTTP header
res.end('Hello World!');

Koodin viimeinen osa lähettää tulosteen konsoliin, kun palvelin käynnistetään.

console.log('Server started on localhost:3333; press Ctrl-C to terminate...!');

Reititys Node.js:ssä

Tässä osiossa selitän yhden Node.js-ohjelmoinnin tärkeimmistä käsitteistä, jotka tunnetaan nimellä reititys (verrattavissa tietokoneverkkojen reitittämiseen: prosessi, jolla etsitään reitti liikenteelle verkossa).

Tässä reititys on tekniikka, jolla käsitellään asiakkaan pyyntöä. palvelevat asiakkaan pyytämää sisältöä URL-osoitteen mukaisesti. URL-osoite koostuu polusta ja kyselymerkkijonosta.

Nähdäksemme asiakkaan pyyntökyselyn, voimme lisätä vastaukseemme alla olevat rivit.

res.write(req.url);
res.end()

Alla uusi koodi.

var http = require('http');
http.createServer(function(req,res){
        res.writeHead(200, { 'Content-Type': 'text/plain' });
        res.write(req.url);
      res.end();		
      }).listen(3333);
console.log('Server started on localhost:3333; press Ctrl-C to terminate...!');

Tallenna tiedosto ja käynnistä sovellus uudelleen käyttämällä seuraavaa komentoa.

node server.js
OR
npm start

Kirjoita verkkoselaimessa eri URL-osoitteita, jotka näytetään alla olevan kuvan mukaisesti.

http://localhost:3333
http://localhost:3333/about
http://localhost:3333/tecmint/authors

Luomme nyt Tecmintille todella pienen verkkosivuston, jossa on kotisivu, tieto- ja tekijäsivut. Näillä sivuilla näytämme joitain tietoja.

Avaa server.js-tiedosto muokkausta varten ja lisää siihen alla oleva koodi.

//include http module 
var http = require('http');

http.createServer(function(req,res){
	//store URL in variable q_string

	var q_string = req.url;
	switch(q_string) {
		case '/':
                        	res.writeHead(200, { 'Content-Type': 'text/plain' });
                        	res.write('Welcome To linux-console.net!')
                        	res.end();
                        	break;
                	case '/about':
                		res.writeHead(200, { 'Content-Type': 'text/plain' });
                        	res.write('About Us');
                        	res.write('\n\n');
                        	res.write('linux-console.net - Best Linux HowTos on the Web.');
                        	res.write('\n');
                        	res.end('Find out more: https://linux-console.net/who-we-are/');
                        	break;
                	case '/tecmint/authors':
                        	res.writeHead(200, { 'Content-Type': 'text/plain' });
                        	res.write('Tecmint Authors');
                        	res.write('\n\n');
                        	res.end('Find all our authors here: https://linux-console.net/who-we-are/');
                        	break;
                	default:
                       		res.writeHead(404, { 'Content-Type': 'text/plain' });
                       		res.end('Not Found');
                        	break;
	}
}).listen(3333);
console.log('Server started on localhost:3333; press Ctrl-C to terminate....');

Yllä olevassa koodissa olemme nähneet, kuinka kommentteja kirjoitetaan Node.js:ssä käyttämällä //-merkkejä, ja olemme myös ottaneet käyttöön kytkin- ja kirjainkomennot asiakaspyyntöjen reitittämiseen.

Tallenna tiedosto, käynnistä palvelin ja yritä käyttää eri sivuja.

Siinä se toistaiseksi! Löydät lisätietoja Nodejs- ja NPM-verkkosivustoilta.

Lue myös: PM2:n asentaminen Node.js-sovellusten suorittamiseksi Linuxissa

Johtopäätös

Node.js nousee tänään uusiin huippuihin, ja se on tehnyt täyden pinon kehittämisestä paljon helpompaa kuin ennen. Sen ainutlaatuinen tapahtumaohjatun ohjelmoinnin filosofia antaa sinun luoda salamannopeita, tehokkaita ja skaalautuvia verkkoprosesseja ja palvelimia.

Seuraavaksi selitämme Node.js-kehykset, jotka laajentavat sen alkuperäisiä ominaisuuksia verkko-/mobiilisovellusten nopeaan ja luotettavaan kehittämiseen. Jaa ajatuksesi tästä artikkelista alla olevan kommenttiosion kautta.