1. 程式人生 > >Node.js學習筆記(一)——完整的響應html頁面(包括css,js檔案)

Node.js學習筆記(一)——完整的響應html頁面(包括css,js檔案)

Node.js學習筆記(一)——完整的響應html頁面(包括css,js檔案)

新手學習部落格,如存在問題,歡迎指出!

終於解決了這個問題!之前寫的程式碼,然後只能加載出html檔案,然後在網上找到了解決方案。
參考部落格

這裡標記一下最主要的幾個點:

  1. node.js檔案共有兩個,一個是server.js,另一個是index.js(index.js與server.js放在同一目錄下)。
  • index.js作為入口

    var server = require("./server");
    
    server.start();
    
  • server.js

    var http = require("http");
    var fs = require('fs');
    var url = require('url');
    exports.start = function(){
    	http.createServer(function(request, response) {
       	var pathname = url.parse(request.url).pathname;
        	var ext = pathname.match(/(\.[^.]+|)$/)[0];//取得字尾名
        	switch(ext){
            		case ".css":
            		case
    ".js": fs.readFile("."+request.url, 'utf-8',function (err, data) {//讀取內容 if (err) throw err; response.writeHead(200, { "Content-Type": { ".css":"text/css", ".js":"application/javascript"
    , }[ext] }); response.write(data); response.end(); }); break; default: fs.readFile('./index.html', 'utf-8',function (err, data) { //讀取內容 if (err) throw err; response.writeHead(200, { "Content-Type": "text/html" }); response.write(data); response.end(); }); } }).listen(8888); console.log("server start..."); }

    module.filename:開發期間,該行程式碼所在的檔案。
    __filename:始終等於 module.filename。
    __dirname:開發期間,該行程式碼所在的目錄。
    process.cwd():執行node的工作目錄,可以使用 cd /d 修改工作目錄。
    require.main.filename:用node命令啟動的module的filename, 如 node xxx,這裡的filename就是這個xxx。
    require()方法的座標路徑是:module.filename;fs.readFile()的座標路徑是:process.cwd()。

Node.js 檔案系統
Node.js 提供一組類似 UNIX(POSIX)標準的檔案操作API。 Node 匯入檔案系統模組(fs)語法如下所示:

var fs = require("fs")

參考
參考:Node.js v11.2.0 Documentation

Match函式
使用指定的正則表示式函式對字串進行查詢,並以陣列形式返回符合要求的字串
原型:stringObj.match(regExp)
引數:
stringObj 必選項,需要去進行匹配的字串
RegExp 必選項,指定的正則表示式
返回值:如果沒有使用g(全域性匹配)選項,則返回第一個匹配的字串、該字串所在位置及原始字串組成的陣列,如果使用g選項,則返回所有匹配的字串組成的陣列

Nodejs正則表示式函式之match、test、exec、search、split、replace使用詳解

  1. 其他的就是相應的html、css、JavaScript檔案了,自由發揮就可以!