Latest web development tutorials

module Web Node.js

Qu'est-ce qu'un serveur Web?

le serveur Web se réfère généralement au serveur de site Internet réside sur le fait référence à un certain type de programme d'ordinateur, la fonctionnalité de base d'un serveur Web pour fournir des informations de service de navigation Web. Il ne supporte que le protocole HTTP, HTML format de document et de l'URL, et le navigateur web du client avec.

La plupart des serveurs web supportent le langage de script côté serveur (php, python, ruby), etc., et d'obtenir des données de la base de données via un langage de script, les résultats renvoyés au navigateur client.

Les trois serveur Web le plus courant est Apache, Nginx, IIS.


Architecture de l'application Web

  • Client - Client, désigne généralement le navigateur, le navigateur peut demander des données au serveur via le protocole HTTP.

  • Server - serveur, désigne généralement le serveur Web, le client peut recevoir une demande, envoyer une réponse aux données des clients.

  • Business - couche d'affaires, à travers les applications de traitement du serveur Web, comme interagir avec la base de données, la logique, les procédures d' appel externes.

  • Données - de la couche de données, généralement constituée par la base de données.


Créer un nœud serveur Web en utilisant

Node.js fournit des modules http, module http est principalement utilisé pour construire le serveur HTTP et le client en utilisant le serveur HTTP ou fonction client doit être appelé module http, le code est le suivant:

var http = require('http');

Ce qui suit est une démonstration d'une architecture de serveur HTTP de base (en utilisant le port 8081), de créer le fichier server.js, le code est le suivant:

var http = require('http');
var fs = require('fs');
var url = require('url');


// 创建服务器
http.createServer( function (request, response) {  
   // 解析请求,包括文件名
   var pathname = url.parse(request.url).pathname;
   
   // 输出请求的文件名
   console.log("Request for " + pathname + " received.");
   
   // 从文件系统中读取请求的文件内容
   fs.readFile(pathname.substr(1), function (err, data) {
      if (err) {
         console.log(err);
         // HTTP 状态码: 404 : NOT FOUND
         // Content Type: text/plain
         response.writeHead(404, {'Content-Type': 'text/html'});
      }else{	         
         // HTTP 状态码: 200 : OK
         // Content Type: text/plain
         response.writeHead(200, {'Content-Type': 'text/html'});	
         
         // 响应文件内容
         response.write(data.toString());		
      }
      //  发送响应数据
      response.end();
   });   
}).listen(8081);

// 控制台会输出以下信息
console.log('Server running at http://127.0.0.1:8081/');

Ensuite, nous créons un fichier index.htm dans le répertoire, comme suit:

<html>
<head>
<title>Sample Page</title>
</head>
<body>
Hello World!
</body>
</html>

fichier server.js exécutif:

$ node server.js
Server running at http://127.0.0.1:8081/

Puis nous avons mis l'adresse dans votre navigateur: http: //127.0.0.1: 8081 / index.htm, l'affichage comme indiqué ci-dessous:

Exécutif de l'information de sortie de la console est la suivante:

Server running at http://127.0.0.1:8081/
Request for /index.htm received.     #  客户端请求信息

Exemples de gifs démontrent


Utilisation Node Création Web Client

Node Création de clients Web ont besoin d'introduire le module http, créer le fichier Client.js, le code est le suivant:

var http = require('http');

// 用于请求的选项
var options = {
   host: 'localhost',
   port: '8081',
   path: '/index.htm'  
};

// 处理响应的回调函数
var callback = function(response){
   // 不断更新数据
   var body = '';
   response.on('data', function(data) {
      body += data;
   });
   
   response.on('end', function() {
      // 数据接收完成
      console.log(body);
   });
}
// 向服务端发送请求
var req = http.request(options, callback);
req.end();

Ouvrez un nouveau terminal, exécuter le fichier Client.js, les résultats de sortie sont les suivantes:

$ node client.js
<html>
<head>
<title>Sample Page</title>
</head>
<body>
Hello World!
</body>
</html>

Exécutif de l'information de sortie de la console est la suivante:

Server running at http://127.0.0.1:8081/
Request for /index.htm received.   # 客户端请求信息

Exemples de gifs démontrent