Hallo Wereld
Eerst moet u fibjs met succes op uw systeem installeren. Zoals gewoonlijk beginnen we onze eerste regel fibjs-programma met de eenvoudigste "hallo, wereld":
1console.log('hello, world');
Nadat u het bestand hebt opgeslagen main.js
, fibjs main.js
kunt u deze code uitvoeren door deze op de opdrachtregel te typen.
De eerste hallo-server
Als back-end ontwikkelingsframework heeft fibjs een ingebouwde, behoorlijk krachtige applicatieserver. We kunnen heel gemakkelijk snel een webserver bouwen. Vervolgens zullen we onze eerste hello-server opzetten:
1
2
3
4
5
6
7const http = require('http');
var svr = new http.Server(8080, (req) => {
req.response.write('hello, world');
});
svr.start();
Voer na het uitvoeren in de browser het volgende in:
1http://127.0.0.1:8080/
Je kunt de uitvoer van onze eerste hello-server zien hello, world
.
Wees slimmer
De eerste hallo-server is stom, hij keert gewoon terug, ongeacht welk adres je invoert hello, world
. Laten we het vervolgens een beetje slimmer maken:
1
2
3
4
5
6
7
8
9
10
11const http = require('http');
var hello_server = {
'/:name': (req, name) => {
req.response.write('hello, ' + name);
}
};
var svr = new http.Server(8080, hello_server);
svr.start();
Voer na het uitvoeren in de adresbalk van de browser het volgende in:
1http://127.0.0.1:8080/fibjs
U kunt zien dat de uitvoerinhoud van de server verandert hello, fibjs
. Wanneer u de inhoud van de adresbalk wijzigt, verandert de uitvoerinhoud van de server ook dienovereenkomstig.
Degenen die meer werk kunnen doen, ondersteunen statische websites
Vervolgens vragen we de server om nog meer dingen te doen. We hopen dat de server statisch bladeren door bestanden kan ondersteunen en ook kan uitvoeren hello, world
. We stellen het antwoordadres hello, fibjs
in als /hello/fibjs
::
1
2
3
4
5
6
7
8
9
10
11
12
13const http = require('http');
const path = require('path');
var root_server = {
'/hello/:name': (req, name) => {
req.response.write('hello, ' + name);
},
'*': path.join(__dirname, 'web')
};
var svr = new http.Server(8080, root_server);
svr.start();
U moet een map maken web
en daarin enkele bestanden opslaan, zoals het downloaden van een fibjs-document en het daarin plaatsen om te testen.
Na het uitvoeren http://127.0.0.1:8080/hello/fibjs
kunnen we het nog steeds zien wanneer we er toegang toe hebben hello, fibjs
, maar wanneer we toegang krijgen tot andere adressen, zullen we statische bestanden zien.
Vergroot de ontkoppelingsmogelijkheden van modules
Laten we vervolgens de server een beetje complexer maken. We hebben een reeks hello-services die de zakelijke verzoeken die we definiëren voltooien. Het pad naar deze set services wordt gespecificeerd door de hoofdservice op basis van vereisten. In het volgende voorbeeld verwijst hello
en naar de hallo-service.bonjour
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21const http = require('http');
const path = require('path');
var hello_server = {
'/:name(fibjs.*)': (req, name) => {
req.response.write('hello, ' + name + '. I love you.');
},
'/:name': (req, name) => {
req.response.write('hello, ' + name);
}
};
var root_server = {
'/hello': hello_server,
'/bonjour': hello_server,
'*': path.join(__dirname, 'web')
};
var svr = new http.Server(8080, root_server);
svr.start();
Op deze manier kunnen we eenvoudig volledig ontkoppelde modules maken en vervolgens het hoofdprogramma gebruiken om ze samen te stellen tot de interfaces die we nodig hebben. Dit is vooral handig bij api-versiebeheer: als u bijvoorbeeld /v1/hello/fibjs
overschakelt van naar /v2/hello/fibjs
, hoeft de module zelf geen wijzigingen aan te brengen, u hoeft deze alleen maar bij de ingang aan te passen.
samenvatting
Via deze sectie kunt u uw eigen fibjs-serverproject starten. Vervolgens zullen we de ontwikkelingsmethoden van fibjs in meer onderverdelingen introduceren.