国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > JavaScript > 正文

nodejs構建本地web測試服務器 如何解決訪問靜態資源問題

2019-11-19 16:04:57
字體:
來源:轉載
供稿:網友

直接打開html文件,是以file:///方式打開的,這種方式很多時候會遇到跨域的問題,因此我們一般會搭建一個簡易的本地服務器,來運行測試頁面。

一、構建靜態服務器

1、使用express模塊

建立個js文件,命名server,內容代碼如下:

var express = require('express');var app = express();var path = require('path');//指定靜態資源訪問目錄app.use(express.static(require('path').join(__dirname, 'public')));// app.use(express.static(require('path').join(__dirname, 'views'))); 如果有文件夾存放資源,出現報錯的話,那就多use幾次就可以了// 設定views變量,意為視圖存放的目錄app.set('views', (__dirname + "/public"));// app.set('views', __dirname);// 修改模板文件的后綴名為htmlapp.set( 'view engine', 'html' );// 運行ejs模塊app.engine( '.html', require( 'ejs' ).__express );app.get("/", function(req, res) {  res.render('index');});var server = app.listen(1336, "127.0.0.1",function(){  var host = server.address().address;  var port = server.address().port;  console.log("Server running at http://%s:%s", host, port)});

文件結構如下:

運行的話只要執行:node server.js 就可以了

然后在瀏覽器輸入http://127.0.0.1:1336/ 來訪問項目文件夾內的文件了

2、使用connect模塊

建立個js文件,命名 server2 ,內容代碼如下:

 var connect = require("connect"); var serveStatic = require("serve-static"); var app = connect(); // app.use(serveStatic("C://xxx//xxx//xxx//項目文件夾")); app.use(serveStatic("public")); app.listen(1337); console.log('Server running at http://127.0.0.1:1337/');

運行的話只要執行:node server2.js 就可以了,

然后在瀏覽器輸入http://127.0.0.1:1337/ 來訪問項目文件夾內的文件了。(如果是index.html文件可以省略不寫,默認加載的就是這個文件);

3、使用http模塊

建立個js文件,命名 server3 ,內容代碼如下:

var finalhandler = require('finalhandler')var http = require('http')var serveStatic = require('serve-static')// Serve up public/ftp foldervar serve = serveStatic('public', {'index': ['index.html', 'index.htm']})// Create servervar server = http.createServer(function onRequest (req, res) {  serve(req, res, finalhandler(req, res))})// Listenserver.listen(1338);console.log('Server running at http://127.0.0.1:1338/');

運行的話只要執行:node server3.js 就可以了,

然后在瀏覽器輸入http://127.0.0.1:1338/ 來訪問項目文件夾內的文件了。

注:總的文件目錄如下:

源碼下載地址:https://github.com/arvin0/nodejs-example/tree/master/web-static-test-server

二、解決訪問靜態資源

主要使用兩個模塊

1.通用的 serve-static 模塊

詳細文檔:https://github.com/expressjs/serve-static

2.express專屬的  app.use(express.static(require('path').join(__dirname, 'public')));  方法

詳細文檔:http://expressjs.com/en/4x/api.html ,然后ctrl+F搜索 express.static ,就能找到對應的說明了。

以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持武林網。

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 徐州市| 图木舒克市| 拜城县| 扎赉特旗| 永德县| 石泉县| 菏泽市| 瑞安市| 杭锦后旗| 扶沟县| 榆社县| 漳浦县| 龙南县| 浮山县| 登封市| 周宁县| 梨树县| 南宫市| 东城区| 建昌县| 顺昌县| 内丘县| 吉水县| 乌兰县| 津市市| 策勒县| 邹城市| 探索| 嵊泗县| 新和县| 文昌市| 瓮安县| 当阳市| 清水县| 独山县| 太原市| 平邑县| 庆城县| 霍州市| 铁力市| 临江市|