天天看點

Node.js 搭建服務1、搭建demo2、res.end()3、res.write()

1、搭建demo

// 得到内置子產品,引入NodeJS的内置http子產品
var http = require("http")
// 建立伺服器,使用createServer方法
// 回調函數中有req參數表示的是請求,res的參數表示的是響應
var serve = http.createServer(function (req,res) {
    //輸出
    res.end("hello Node.js")
})
// 監聽,預設的端口是80  我用3000端口
serve.listen(3000)
           

node 01.js就能運作這個檔案 

Node.js 搭建服務1、搭建demo2、res.end()3、res.write()

不要關閉這個PowerShell或者CMD視窗,輸入網址  127.0.0.1:3000

頁面展示

Node.js 搭建服務1、搭建demo2、res.end()3、res.write()

打斷CMD使用指令 ctrl+c

一定要維持着光标挂起的狀态,如果打斷了,此時頁面就崩潰了

需要注意的是,如果改變這個檔案的内容,此時一定要重新進行node執行

問題:

  1. 和PHP一樣,Node搭建的伺服器也是将所有的計算結果扁平化後傳回給計算機
  2. 沒有安裝Node.js的計算機進行請求我們本地有Node.js的計算機的時候能不能通路我們的功能?答案是可以的,因為Node.js本身就是搭建伺服器的,是以我們隻要把ip給對應在同網絡下的計算機都可以通路,因為本質上通路的不是Node,而是伺服器
// 得到内置子產品,引入NodeJS的内置http子產品
var http = require("http")
// 建立伺服器,使用createServer方法
// 回調函數中有req參數表示的是請求,res的參數表示的是響應
var serve = http.createServer(function (req,res) {
    //s設定字元集
    res.setHeader("Content-type","text/html;charset=UTF8")
    //輸出
    res.end("今花了"+(5+5)+"元吃了頓飯")
})
// 監聽,預設的端口是80  我用3000端口
serve.listen(3000)
           
Node.js 搭建服務1、搭建demo2、res.end()3、res.write()

2、res.end()

res.end不允許輸出多行

res.setHeader("Content-type","text/html;charset=UTF8")
    //輸出
    res.end("你好1");
    res.end("你好2");
    res.end("你好3");
    res.end("你好4");
           

隻輸出1行

Node.js 搭建服務1、搭建demo2、res.end()3、res.write()

res.end不能輸入非字元串

res.end(123);
           

報錯

res.end可以結合HTML标簽顯示

res.end("<h1>你好<span>Node</span>.js</h1>");
           
Node.js 搭建服務1、搭建demo2、res.end()3、res.write()

3、res.write()

如果要使用res.write最後必須要有res.end,否則浏覽器處于請求狀态

多條語句輸出使用的是res.write,并且也結合HTML标簽進行使用

res.write("<p>你好我是第1行</p>");
    res.write("<p>你好我是第2行</p>");
    res.write("<p>你好我是第3行</p>");
    res.write("<p>你好我是第4行</p>");
    res.end("結束了")
           
Node.js 搭建服務1、搭建demo2、res.end()3、res.write()

和res.end一樣不能輸入非字元串的内容、

res.end(123);
           

報錯 

繼續閱讀