精华内容
下载资源
问答
  • Nodejs搭建web服务器

    万次阅读 2018-09-18 10:33:35
    使用Nodejs + http 创建web服务器 1、首先创建一个server.js文件,创建服务器,以及对应css和js文件的引入和判断 var http=require(‘http’); var fs = require(‘fs’); var url = require(‘url’); //创建...

    使用Nodejs + http 创建web服务器
    1、首先创建一个server.js文件,创建服务器,以及对应css和js文件的引入和判断
    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.");
    	//获取后缀,判断是js还是css文件,如果目录结构不同,此处需要修改
    	  var firstDir = pathname && pathname.split('/')[1];
    	  var ContentType = {'Content-Type': 'text/html'};
    
    	  // js - application/x-javascript
    	  if (firstDir && firstDir === 'static') {
    	    ContentType = {'Content-Type': 'text/css'};
    	  } 
    	  if (firstDir && firstDir === 'js') {
    	    ContentType = {'Content-Type': 'application/x-javascript'}
    	  }
    
    	  //从文件系统中去请求的文件内容
    	  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, ContentType);
    
    	      //写会回相应内容
    	      response.write(data.toString());
    	    }
    	    //发送响应数据
    	    response.end();
    	  });
    	}).listen(8080);
    
    	console.log('Server running at http://127.0.0.1:8080/');	
    

    2、 创建一个简单的html页面 ,此处是两个边框,然后是一个表格,并在第二个边框添加上一个点击事件,
    作为引入另一个js文件




    index


    <!--

    3、css样式文件和上面写的style标签内容一样
    body {
    border: 1px solid blue;
    }

    	div {
    	    border-radius: 10px;
    	    width: 400px;
    	    height: 200px;
    	    border: 2px solid yellow;
    	}
    

    4、这个是js文件
    console.log(’-成功引入js文件-’);
    function onClickDiv () {
    alert(‘second点击事件’);
    }

    整体上就这么多了!详细的都有注释,大家可以自己看看,相对上也比较简单,具体步骤我也简单说下:

    1、下载安装nodejs,官网就可以了,此处使用的是http,也有的例子使用的是express(需要在nodejs中下载,
    详细的自己可以百度下看看)
    2、进入到此项目中js文件那层目录,执行node server.js(此处取名为server,具体看自己的名称)
    3、执行成功会打印服务器启动,并显示ip和端口号
    4、打开浏览器http://127.0.0.1:8080/index.html即可查看效果

    最后上图:
    在这里插入图片描述

    在这里插入图片描述

    下面给出百度网盘下载地址:
    https://pan.baidu.com/s/15QsRV3MSIcigd8XEIpcfQg gwjw

    展开全文
  • Web服务器一般指网站服务器,是指驻留于因特网上某种类型计算机的程序,Web服务器的基本功能就是提供Web信息浏览服务。它只需支持HTTP协议、HTML文档格式及URL,与客户端的网络浏览器配合。 大多数 web 服务器都支持...
  • nodejs搭建web服务器就是这么简单!

    万次阅读 多人点赞 2017-05-27 11:45:24
    Node.js 是一个基于 Chrome V8 引擎的 JavaScript 运行环境。 Node.js 使用了一个事件驱动、非阻塞式 I/O 的...(nodejs官网上的介绍),正如官网上介绍的那样,nodejs确实很牛!怎么个牛法?看看下面的代码就知道了。

    Node.js 是一个基于 Chrome V8 引擎的 JavaScript 运行环境。 Node.js 使用了一个事件驱动、非阻塞式 I/O 的模型,使其轻量又高效。Node.js 的包管理器 npm,是全球最大的开源库生态系统。(nodejs官网上的介绍),正如官网上介绍的那样,nodejs确实很牛!怎么个牛法?看看下面的代码就知道了。

    //引入http模块
    var http = require("http");
    //设置主机名
    var hostName = '127.0.0.1';
    //设置端口
    var port = 8080;
    //创建服务
    var server = http.createServer(function(req,res){
        res.setHeader('Content-Type','text/plain');
        res.end("hello nodejs");
    
    });
    server.listen(port,hostName,function(){
        console.log(`服务器运行在http://${hostName}:${port}`);
    });

    短短几行代码就把一个简单的web服务器搭建完成了,为了验证效果,我们在浏览器请求,结果如下:

    这里写图片描述

    运行成功!

    到此为止,一个web服务器就建立成功了! 没错就是这么简单,然后我们就可以写个html界面愉快的玩耍了,哈哈哈!果断的写了一个html页面来请求一下我们的web服务器。

    <!DOCTYPE html>
    <html lang="en">
    <head>
        <meta charset="UTF-8">
        <title>Document</title>
        <script type="text/javascript" src="jquery-1.2.1.js"></script>
    </head>
    <body>
    
        <div class="container">
            <div class="btn" onclick="getText()">获取数据</div>
            <div class="text"></div>
        </div>
    
    </body>
    
    <script type="text/javascript">
    
        function getText(){
            $(".text").load("http:127.0.0.1:8080");
        }
    
    </script>
    
    </html>

    代码简单,点击div获取数据并将服务器返回的数据展示。好了,我们运行一下demo.html文件,我擦来!居然出现了……

    这里写图片描述

    很明显,通过jquery请求不到数据,这是因为跨域请求的原因。我们的web服务器并不支持跨域请求,所以报错了。解决方式:在服务器的响应头文件里加上如下代码:

    res.setHeader('Content-Type','text/plain');
        res.setHeader('Access-Control-Allow-Origin',"*")
        res.setHeader("Access-Control-Allow-Headers", "Origin, X-Requested-With, Content-Type, Accept");  
        res.end("hello nodejs");

    再次重启服务器,运行demo.html,显示结果很是令人欣喜!

    这里写图片描述

    通常请求服务器都会拼接参数的,最常用的就是get请求,post请求。很明显,我们现在的代码还不能支持。express框架很好的封装了nodejs的http模块,使我们用起来非常的简单。
    引入express :$ cnpm install express –save

    var express = require("express");
    var app = express();
    var hostName = '127.0.0.1';
    var port = 8080;
    
    app.all('*', function(req, res, next) {  
        res.header("Access-Control-Allow-Origin", "*");  
        res.header("Access-Control-Allow-Headers", "Origin, X-Requested-With, Content-Type, Accept");  
        res.header("Access-Control-Allow-Methods","PUT,POST,GET,DELETE,OPTIONS");  
        res.header("X-Powered-By",' 3.2.1')  
        res.header("Content-Type", "application/json;charset=utf-8");  
        next();  
    });
    
    app.get("/get",function(req,res){
        console.log("请求url:",req.path)
        console.log("请求参数:",req.query)
        res.send("这是get请求");
    })
    
    app.listen(port,hostName,function(){
    
       console.log(`服务器运行在http://${hostName}:${port}`);
    
    });

    使用方式变化不大,通过express()方法开启服务,然后在通过get方法来设置匹配参数的路由,通过在回调函数的req中可以获取请求参数和地址。post请求也是类似,不过有不同的是,post请求在获取参数的时候要引入body-parser 中间件,用于处理 JSON, Raw, Text 和 URL 编码的数据。

    var express = require("express");
    var bodyParser     =   require("body-parser"); 
    var app = express(); 
    app.use(bodyParser.urlencoded({ extended: false }));  
    var hostName = '127.0.0.1';
    var port = 8080;
    
    app.all('*', function(req, res, next) {  
        res.header("Access-Control-Allow-Origin", "*");  
        res.header("Access-Control-Allow-Headers", "Origin, X-Requested-With, Content-Type, Accept");  
        res.header("Access-Control-Allow-Methods","PUT,POST,GET,DELETE,OPTIONS");  
        res.header("X-Powered-By",' 3.2.1')  
        res.header("Content-Type", "application/json;charset=utf-8");  
        next();  
    });
    
    app.get("/get",function(req,res){
        console.log("请求url:",req.path)
        console.log("请求参数:",req.query)
        res.send("这是get请求");
    })
    
    app.post("/post",function(req,res){
        console.log("请求参数:",req.body);
        var result = {code:200,msg:"post请求成功"};
        res.send(result);
    });
    
    
    app.listen(port,hostName,function(){
    
       console.log(`服务器运行在http://${hostName}:${port}`);
    
    });

    运行结果:

    这里写图片描述

    完整的get以及post请求就是以上了。下一篇博客会结果fs文件模块介绍http是如何返回文件的,敬请期待!!

    展开全文
  • nodejs搭建web服务器(简单代理)

    千次阅读 2018-12-16 21:24:06
    nodeJS搭一个简单的(代理)web服务器 前端获取数据时经常会遇到跨域问题,用 nginx 做反向代理就可以解决此问题。但是 nginx 属于中间件代理,不同开发者布署的 web 服务器地址可能不一样,这样 nginx 的配置就不能...

    前端获取数据时经常会遇到跨域问题,用 nginx 做反向代理就可以解决此问题。但是 nginx 属于中间件代理,不同开发者布署的 web 服务器地址可能不一样,这样 nginx 的配置就不能做到通用了。

    如果能有一个客户端代理,随着项目源代码提交,这样就可以免去不同开发者的代理配置。webpack-dev-server 就是这样的一个客户端代理,但是如果项目没有用到 webpack,那就没办法用了。那能不能仿照写了一个简单的 web 服务器,用于非 webpack 的项目呢。答案是肯定的,费话少说,上代码。

    const request = require('request');
    const express = require('express');
    const path = require('path');
    
    const app = express();
    
    // 代理配置
    const proxyTable = {  
        '/api': {
            target: 'http://localhost/api' 
        }
    };
    app.use(function(req, res,next) {  
        const url = req.url;  
        if (req.method == 'OPTIONS') {      
          console.log('options_url: ', url); 
          
           //  设置cors 跨域
          // res.header("Access-Control-Allow-Origin", req.headers.origin || '*');
          // res.header("Access-Control-Allow-Headers", "Content-Type, Authorization, X-Requested-With");
          // res.header("Access-Control-Allow-Methods", "PUT,POST,GET,DELETE,OPTIONS");
    
          // 设置 cookie
          // res.header("Access-Control-Allow-Credentials", true);
          
          res.status(200).send('OK');     
          return;
        } 
        // console.log('req_url: ', url);
        next();
    });
    
    // 设置静态目录
    app.use(express.static(path.join(__dirname, 'static')));
    
    app.use('/', function(req, res) {  
          const url = req.url; 
          const proxy = Object.keys(proxyTable);  
          let not_found = true; 
          for (let index = 0; index < proxy.length; index++) {    
              const k = proxy[index];    
              const i = url.indexOf(k);   
              if (i >= 0) {     
                  not_found = false;     
                  const element = proxyTable[k];      
                  const newUrl = element.target + url.slice(i+k.length);
                  req.pipe(request({url: newUrl, timeout: 60000},(err)=>{
                      if(err){          
                          console.log('error_url: ', err.code,url);           
                          res.status(500).send('');
                      }     
                  })).pipe(res);      
                  break;
              } 
          }  
          if(not_found) {    
              console.log('not_found_url: ', url);
              res.status(404).send('Not found');
          } else {    
              console.log('proxy_url: ', url);
          }
    });
    
    // 监听端口      
    const PORT = 8080;
    app.listen(PORT, () => {  
        console.log('HTTP Server is running on: http://localhost:%s', PORT);
    });
    

    PS:static 放静态页面

    展开全文
  • 主要介绍了Nodejs 搭建简单的Web服务器详解及实例的相关资料,并附实例代码和实现效果图,需要的朋友可以参考下
  • 使用Nodejs搭建Web服务器是学习Node.js比较全面的入门教程,因为要完成一个简单的Web服务器,你需要学习Nodejs中几个比较重要的模块,比如:http协议模块、文件系统、url解析模块、路径解析模块、以及301重定向问题...
  • node.js 实现一个简单的 web 服务器还是比较简单的,以前利用 express 框架实现过『nodeJS搭一个简单的(代理)web服务器』。代码量很少,可是使用时需要安装依赖,多处使用难免有点不方便。于是便有了完全使用原生 ...
  • 01如何使用nodejs快速搭建web服务器

    千次阅读 2017-12-17 16:09:47
     要学习nodeJS最好能懂一点后端语言,或者,对web开发有了解。 导航:  nodeJS的介绍(与传统的后端语言简单对比) 开发环境如何搭建 第一个nodeJS写的简单网页 内容:  一、nodeJS的...

    啰嗦一下:

         要学习nodeJS最好能懂一点后端语言,或者,对web开发有了解。

    导航:

    1.   nodeJS的介绍(与传统的后端语言简单对比)
    2.   开发环境如何搭建
    3.   第一个nodeJS写的简单网页



    内容:

        一、nodeJS的介绍(与传统的后端编程语言进行对比)

            1、常见的后端语言:jsp,php,asp等。

                               jsp是java语言做web开发的技术。是Java Server Page的缩写
                               php作为一门语言,语法上混合了 C、Java、Perl 以及 PHP 自创新的语法。最早是Personal Home Page的缩写,后来改为Hypertext Preprocessor
                        asp是微软的一门web技术,使用的是VB的语法,是Active Server Pages的缩写。后来发展为aspx(即asp.net,使用C#语言)

                    2、web程序(B/S)运行的过程(也是用户上网时,计算机是怎么样的运行过程)

                         当用户在浏览器中输入网址(地址)时,
                         1)、浏览器会发会发送请求,通过域名解析服务器(如果是域名而不是ip地址时),把网址解析成ip地址,根据ip地址找到对应的服务器,
                         2)、服务器端软件(如:iis,apache,tomcat等)在服务器指定的文件夹下,找到对应的文件(如果不是静态资源(如:html,图片等等),而是服务器语言编写的代码,就需要在服务器端进行编译)
                         3)、服务器端软件(如:iis,apache,tomcat等)把文件发送到客户端计算机
                         4)、客户端计算机的浏览器渲染(打开)网页,显示在用户眼前。
                         如下图所示:
                     
                         

                  3、nodeJS是什么(当然需要完全了解,还需要进一步的努力学习)

                           nodeJS是JavaScript语言做后端(服务器端)开发的环境和平台,即JavaScript语言做web开发的技术。NodeJS不但自己可以完成服务器软件的功能,也不再需要php,asp,jsp等传统的服务器语言,JavaScript就可以搞定。
                          nodeJS就是让JavaScript代码可以实现服务器端的功能,相当于php,jsp,asp。打破了JS只能做前端的局限。
                          nodeJS是一个基于Chrome V8引擎的JavaScript运行环境。nodeJS使用了事件驱动,非阻塞式的I/O模型,使其轻量又高效
                         如下图所示
                   
                         二、 开发环境如何搭建

                         1、安装:

        进入nodejs官网:http://nodejs.cn/download/,下载最新版本的nodeJS,如: node-v8.9.3-x64.msi。安装时,没有特殊的,只需要全                           部下一步即可。

                         2、测试:

                              1)、新建hello.js文件,代码如下:
                                             console.log("原生JS的代码在node下可以直接执行");
                              2)、进入cmd(命令行),输入 node  hello.js或者node hello
                               


                        3、用nodeJS搭建一个服务器软件(相当于asp的iis,php的apache,jsp的tomcat)
                                 1)、创建server.js文件
                                 2)、输入以下代码:
                                             const http = require('http');//引入http包
     const hostname ='127.0.0.1';//服务器地址
     const port = 706;//服务器的端口号

               const server = http.createServer((request,response)=>{//使用http来创建服务器,
    response.statusCode=200;
    response.setHeader('Content-Type','text/plain');
    response.end('hello nodeJS\n');
      });
     server.listen(port,hostname,()=>{//服务器监听
          console.log(`Server running at http://${hostname}:${port}/`);//这个单引号要注意,是数字键1左边的那个键
     });
            3)、启动服务器:
                         在命令行窗口输入命令:node server.js
            4)、测试服务器是否能用           
                         在浏览器输入:http://localhost:706/

    三、第一个nodeJS写的简单网页
    1)、新建server.js写上如下代码
    const http = require('http');//引入http包
    const hostname ='127.0.0.1';//服务器地址
    const port = 706;//服务器的端口号
    const server = http.createServer((request,response)=>{//使用http来创建服务器,
    response.statusCode=200;
    if(request.url!=='/favicon.ico'){//如果没有这句话,下面的代码会执行两次,因为,在访问网址时,默认会请求“/favicon.ico”,所以,看似请求了一次,其实是请求了两次
    console.log('这是打印在客户端的');
    response.setHeader('Content-Type','text/html;charset=utf-8');
    response.write('<h1>这是nodeJS的服务器端代码</h1>');
    response.write('<table border="1"><tr><td>第一行第一列</td><td>第一行第二列</td></tr></table>');
    response.end();
    }
    });
    server.listen(port,hostname,()=>{
    console.log(`Server running at http://${hostname}:${port}/`);
    });

    2)、启动服务器:
       在命令行窗口输入命令:node server.js
    3)、在浏览器输入 http://localhost:706/

    展开全文
  • nodejs搭建web服务器

    2017-10-17 18:10:25
    nodejs简单几行代码就可以实现一个简单的web服务器,代码如下: //引入http模块 var http = require("http"); //设置主机名 var hostName = '127.0.0.1'; //设置端口 var port = 8080; //创建服务 var server = ...
  • 如何使用nodejs创建Web服务器

    万次阅读 多人点赞 2017-06-04 17:03:33
    Web服务器一般指网站服务器,是指驻留于因特网上某种类型计算机的程序,Web服务器的基本功能就是提供Web信息浏览服务。它只需支持HTTP协议、HTML文档格式及URL,与客户端的网络浏览器配合。 大多数 web 服务器都...
  • ws:是nodejs的一个WebSocket库,可以用来创建服务。 https://github.com/websockets/ws 3.server.js 在项目里面新建一个server.js,创建服务,指定8181端口,将收到的消息log出来。 var WebSocketServer = ...
  • 1.准备文件 2.代码执行阶段 // 1.引入模块 const http = require('http') const path = require('path') const fs = require('fs') // '策略模式' const obj = { ".png": "image/png", ".jpg": "image/jpg",...c
  • CentOS 7 用nodejs搭建web服务器

    千次阅读 2017-12-06 18:17:41
    1.linux系统首先安装好nodejs. 通过node -v查看一下版本,我的版本是v0.10.35 2.开启服务器端口,否则有可能客户端访问不了(以8080端口例) firewall-cmd –zone=public –add-port=8080/tcp –permanent 3.重启...
  • 一、搭建本地web服务器 1、使用node.js创建服务器 1)在F盘新建一个名叫serve的文件夹,用vsCode编辑器打开serve文件夹,并用npm初始化这个文件夹,会生成包含默认配置的package.json文件。 npm init -y 2)使用...
  • web服务器原理与nodejs搭建 基础概念 Web Service:https://zh.wikipedia.org/wiki/Web服务 基础http网络传输协议的web服务处理过程: node.js: 基于JavaScript语言和V8引擎的开源Web服务器项目, 发展过程参考:...
  • 基于nodejs搭建Web,API服务器

    千次阅读 2019-07-19 21:47:19
    Web和API是基于不同的插件进行搭建的,Web服务器是基于ws模块,API...1.搭建Web服务器 const Websockt = require('ws');//第三方插件 const ws = new Websockt.server(//构建ws服务器 port: 9000, host: '10.31....
  • 本文将以一个超小型web项目,来详细介绍如何使用NodeJS基础的http, fs, path, url等模块提供的API来搭建一个简单的web服务器。具有很好的参考价值。下面跟着小编一起来看下吧
  • 利用nodejs 编写服务器端,利用express构建服务器,采用路由器的方式管理路由,导入mysql模块,前端页面通过get方式发送查询请求,通过post方式发送注册请求,通过连接池的方式完成数据库数据的读取与注册功能,使用...
  • 搭建nodejs服务器步骤: 1.安装nodejs服务,node相当于apache服务器 2.在自己定义的目录下新建服务器文件如 server.js 例如,我在E:\PhpProject\HTML5\websocket下创建了server.js文件 var http = require('http')...
  • Nodejs中的web服务器

    2021-05-18 17:50:48
    一、web服务器 1.1、介绍 Web服务器一般指的是网站服务器,是指驻留因特网上某一台或N台计算机的程序,可以处理浏览器等Web客户端的请求并返回相应响应,目前最主流的三个Web服务器是Apache、 Nginx 、IIS、Tomcat。...
  • 既然要用node+express配置服务器,如果电脑上没有的话自然要先安装这两个大宝贝啦。 1.安装node。到Node官网下载安装即可,直接下一步下一步就完成了。 2.npm初始化项目。打开终端,输入npm init -y即可。注意:...
  • 一、编写服务程序 ... const fs = require('fs'); const path = require('path'); const url = require('url'); const zlib = require('zlib'); // gzip压缩模块 ... * 静态服务器 * @param {String} options.ho
  • 在node js中创建一台服务器非常的简单,因为node自带http模块,该模块可以帮助我们非常快速搭建一台web服务器,来处理一个简单的请求. const http = require(http); var server = http.createServer(function(){ ...
  • 主要介绍了nodejs搭建本地服务器并访问文件操作,结合实例形式分析了nodejs搭建本地服务器操作步骤及文件访问相关实现技巧,需要的朋友可以参考下
  • 小程序云开发之httpApi调用(返回“47001处理”)技术栈采用 nodejs + express 搭建web服务器,采用 axios 请求第三方 httpApi项目结构通过应用生成器工具 express-generator 可以快速创建一个应用的骨架。主要的核心...
  • Web服务器一般指网站服务器,是指驻留于因特网上某种类型计算机的程序,Web服务器的基本功能就是提供Web信息浏览服务。它只需支持HTTP协议、HTML文档格式及URL,与客户端的网络浏览器配合。 大多数 web 服务器都...
  • 前言 初入node的小白,可能还是对node一头雾水,那么本节内容将...搭建一个简单的web服务器的步骤 1.生成如下目录 nodeLearn(文件夹) begining(文件夹) sever.js 2.打开 官网,...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 23,729
精华内容 9,491
关键字:

nodejs搭建web服务器