node js學習(一)

jopen 9年前發布 | 27K 次閱讀 Node.js Node.js 開發

1、簡介

JavaScript是一種運行在瀏覽器的腳本,它簡單,輕巧,易于編輯,這種腳本通常用于瀏覽器的前端編程,但是一位開發者Ryan有一天發現這種前端式的腳本語言可以運行在服務器上的時候,一場席卷全球的風暴就開始了。

Node.js是一個基于Chrome JavaScript運行時建立的平臺, 用于方便地搭建響應速度快、易于擴展的網絡應用。Node.js 使用事件驅動, 非阻塞I/O 模型 而得以輕量和高效,非常適合在分布式設備上運行的數據密集型的實時應用。

Node是一個Javascript運行環境(runtime)。實際上它是對Google V8引擎進行了封裝。V8引 擎執行Javascript的速度非常快,性能非常好。Node對一些特殊用例進行了優化,提供了替代的API,使得V8在非瀏覽器環境下運行得更好。

2、node.js優點

  • RESTful API
  • 單線程
  • Node.js可以在不新增額外線程的情況下,依然可以對任務進行并行處理 —— Node.js是單線程的。它通過事件輪詢(event loop)來實現并行操作,對此,我們應該要充分利用這一點 —— 盡可能的避免阻塞操作,取而代之,多使用非阻塞操作。
  • 非阻塞IO
  • V8虛擬機
  • 事件驅動

3、下載安裝(Window 64位版本)

64位下載地址: http://pan.baidu.com/s/1geaR3OZ

安裝步驟:

直接 雙擊node-v0.10.26-x86.msi文件默認安裝即可。

配置環境變量:

默認情況下,安裝后Path中會將我們剛剛安裝的node所在的路徑添加到Path中,所沒有則需要手動將其添加到Path環境變量中。

查看是否安裝成功:

在cmd 進入剛剛安裝的路徑 ,敲入如下的命令,查詢其版本

node --version 

假如出現下面的界面則證明安裝配置成功。

4、nodejs應用組成部分

  1. 引入 required 模塊:我們可以使用  require 指令來載入 Node.js 模塊。

  2. 創建服務器:服務器可以監聽客戶端的請求,類似于 Apache 、Nginx 等 HTTP 服務器。

  3. 接收請求與響應請求服務器很容易創建,客戶端可以使用瀏覽器或終端發送 HTTP 請求,服務器接收請求后返回響應數據。

5、hello world程序

步驟一、引入 required 模塊

我們使用 require 指令來載入 http 模塊,并將實例化的 HTTP 賦值給變量 http,實例如下:

var http = require("http");

步驟二、創建服務器

接下來我們使用 http.createServer() 方法創建服務器,并使用 listen 方法綁定 8888 端口。 函數通過 request, response 參數來接收和響應數據。

實例如下,在你項目的根目錄下創建一個叫 server.js 的文件,并寫入以下代碼:

var http = require('http');

http.createServer(function (request, response) {

    // 發送 HTTP 頭部 
    // HTTP 狀態值: 200 : OK
    // 內容類型: text/plain
    response.writeHead(200, {'Content-Type': 'text/plain'});

    // 發送響應數據 "Hello World"
    response.end('Hello World\n');
}).listen(8888);

// 終端打印如下信息
console.log('Server running at http://127.0.0.1:8888/');

以上代碼我們完成了一個可以工作的 HTTP 服務器。

使用 node 命令執行以上的代碼:

node server.js

命令行輸出如下信息,則說明服務器應用已經啟動(上面打印的一句話)

Server running at http://127.0.0.1:8888/

在瀏覽器中訪問http://127.0.0.1:8888/ ,你就會看到“Hello World”頁面

分析Node.js 的 HTTP 服務器:

  • 第一行請求(require)Node.js 自帶的 http 模塊,并且把它賦值給 http 變量。
  • 接下來我們調用 http 模塊提供的函數: createServer 。這個函數會返回 一個對象,這個對象有一個叫做 listen 的方法,這個方法有一個數值參數, 指定這個 HTTP 服務器監聽的端口號。

致謝:感謝您的閱讀!

來自: http://www.cnblogs.com/0201zcr/p/5096472.html

 本文由用戶 jopen 自行上傳分享,僅供網友學習交流。所有權歸原作者,若您的權利被侵害,請聯系管理員。
 轉載本站原創文章,請注明出處,并保留原始鏈接、圖片水印。
 本站是一個以用戶分享為主的開源技術平臺,歡迎各類分享!