精华内容
下载资源
问答
  • node搭建服务器
    千次阅读
    2019-07-11 11:21:33

    server.js

    const express = require('express')
    //处理post请求发送的数据
    const bodyParser = require('body-parser')
    //设置跨域请求
    app.all('*',function(req,res,next){
      //设置请求头
      //允许所有来源访问
      res.header('Access-Control-Allow-Origin', '*')
      //用于判断request来自ajax还是传统请求
      res.header('Access-Control-Allow-Headers', 'X-Requested-With')
      //允许访问的方式
      res.header('Access-Control-Allow-Methods', 'PUT,POST,GET,DELETE,OPTIONS')
      //修改程序信息与版本
      res.header('X-Powered-By', ' 3.2.1')
      //内容类型:如果是post请求必须指定这个属性
      res.header('Content-Type', 'application/json;charset=utf-8')
      next()
    })
    
    更多相关内容
  • 今天小编就为大家分享一篇基于node搭建服务器,写接口,调接口,跨域的实例,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
  • node搭建简单服务器

    千次阅读 2022-02-03 10:43:36
    node搭建简单服务器,fs模块,模板引擎

    node中提供了一些核心模块,基于这些模块可以在服务器端进行一些操作

    fs模块

    fs是node提供的一个核心模块,可以用来读取文件,现有一个需求,要把同目录下的test中org.txt中数据进行处理,并且在test文件夹下新建一个名为student.txt的目录来保存处理好的数据

    处理前的数据
    小明=100 小红=90 小刚=80 小彭=70
    
    处理后的数据
    小明:100
    小红:90
    小刚:80
    小彭:70
    
    // 1.创建文件方法
    const fs=require('fs');
    fs.readFile('./test/og.txt','utf8',function(err,data){
        // 如果读取失败直接退出函数
        if(err){
           return err; 
        }
        // 1.读取文件内容
        // 2.修改文件内容
        // replace用普通字符替换只会执行一次,用正则的全局匹配来替换
        let reg=/=/g;
        let reg2=/ /g;
        let new_data=data.replace(reg,':');
        // 再次替换空格为换行符\r\n
        let final_data=new_data.replace(reg2,'\r\n')
        //将最终处理好的字符写入到test目录下,新建一个文本保存
        fs.writeFile('./test/student.txt',final_data,'utf8',err=>{});
    })
    

    代码实现如上,下面是是几个需要注意的地方
    1.读取文件内容fs.readFile
    传入三个参数,第一个是读取文件的路径,第二个是设置读取的编码格式,选填,第三个是一个回调函数,有两个参数,第一个是错误对象,第二个是读取到的数据
    2.写入文件内容fs.writeFile
    传入四个参数,第一个是写入内容的路径,第二个是写入的内容,第三个是写入的编码格式,默认为utf8,第四个是回调函数,传一个错误对象参数
    字符串的替换
    字符串替换用的是replace方法,传入两个参数,第一个是要替换的内容,可以是正则也可以是一个字符串,第二个是替换为的字符,如果第一个参数用的是字符串只会执行一次替换,所以这里用的是正则的全局替换,并且replace会返回一个替换后的新字符串,原字符串不会受影响,需要用一个字符串接收

    搭建一个简单的服务器

    const http=require('http')
    const path=require('path')
    const fs=require('fs')
    const url=require('url')
    const template=require('art-template')
    const server=http.createServer()
    const arr_list=[];
    server.on('request',(req,res)=>{
        // 将所有public中的文件暴露出去,给所有的路径都拼接一个public字符串
        if(url.parse(req.url,true).pathname=='/handle'){
            // res.end(url.parse(req.url,true).query)
            let str=url.parse(req.url,true).query;
            str=JSON.stringify(str);
            str=JSON.parse(str);
            // str.data='2022.2.3'
            arr_list.push(str)
            console.log(arr_list);
            // 重定向
            res.statusCode=302
            res.setHeader('Location','/');
            res.end();
            // res.end(str);
        }
        if(req.url=='/'){
            req.url='/index.html'
        }
        let req_url='public'+req.url
        fs.readFile(req_url,'utf8',function(err,data){
            // 当访问的页面是index.html时进行模板引擎渲染
            if(req_url=='public/index.html'){
                let li_moudle=['<li>123</li>']
                for(i=0;i<arr_list.length;i++){
                    li_moudle.push(`<li>${arr_list[i].txt}</li>`);
                    console.log(li_moudle);
                }
                data=data.toString()
                data=template.render(data,{
                    lists:li_moudle
                })
                // 这里是普通的replace方法替换
                // data=data.replace('^_^',li_moudle);
                // console.log(li_moudle);
            }
            if(err){
                return res.end('404 not found')
            }
            res.end(data);
        })
    });
    server.listen(3000,()=>{
        console.log('服务器运行中,127.0.0.1:3000');
    })
    

    实现思路

    上面的代码就是用node几个核心模块搭建的一个最简单的服务器,一共有两个页面,一个是首页评论页面,一个是写评论页面,js文件在运行时会有一个数组存放评论数据,每次当用户增加评论时,都会把提交的数据通过push()方法添加到数组中,提交完成后会重定向到首页,首页每次刷新时候都会通过模板引擎重新渲染
    1.打开服务器
    创建一个server对象,并且监听3000端口
    nodemon
    这里安装了一个nodemon,用nodemon打开服务器可以在代码改变时候服务器同步刷新
    2.暴露可以被用户访问到的文件
    在收到客户端访问时,动态的给访问路径前拼接一个public路径,然后打开访问路径,这样就只能访问到public目录下的所有资源了
    url.parse
    url.parse可以解析访问网址,并且解析出get请求数据,但是由于新版的node不再使用该方法,所以会出现一些错误,可以用JSON转换一次

    let str=url.parse(req.url,true).query;
            str=JSON.stringify(str);
            str=JSON.parse(str);
    

    3.重定向
    这里重定向用的是302状态码

            res.statusCode=302
            res.setHeader('Location','/');
            res.end();
    

    4.模板引擎渲染
    这里模板引擎渲染采用art-template模块,这是第三方模块,需要npm下载

    展开全文
  • web服务器的基本知识 功能:1.接收HTTP请求(get,post,delete,put)2.处理HTTP请求 常见的web服务器架构: 1. Nginx/Apache:负责接收http请求,确定谁来处理请求,并返回请求的结果 2. php-fpm/php模块 常见得到请求...
  • node.js搭建自己的服务器

    千次阅读 2022-04-28 20:06:12
    根据服务不同,服务器的类型也不同,例如web服务器提供图片浏览,新闻浏览....等服务的服务器。 3、ip地址和域名 ip地址:标识一个网络设备(计算机、手机、电视)在某一个具体的网络当中的地址。要访问某...

    前提要点:

    1、首先让我们了解一下什么是服务器和客户端吧!

            服务器是提供网络服务的机器,通过安装特殊的软件(或者是运行某段特殊的代码)来提供服务。

            客户端与服务器:提供服务的是服务器,享受服务的是客户端

    2、服务器的类型

            根据服务不同,服务器的类型也不同,例如web服务器提供图片浏览,新闻浏览....等服务的服务器。

    3、ip地址和域名

            ip地址:标识一个网络设备(计算机、手机、电视)在某一个具体的网络当中的地址。要访问某个电脑上的资源,先要找到它的ip。127.0.0.1 特指本机ip地址。

            域名:ip地址的别名,由于ip地址不好记忆,我就给它们取个好记的别名。localhost这个域名特指127.0.0.1这个地址。

            域名解析系统:把域名翻译成Ip地址的系统。

    4、端口

            一个IP地址的端口可以有65536个,范围是从[0,65535])。不同的端口被不同的软件占用,以提供不同的服务。

            一台电脑可以通过安装多个服务器端软件来提供服务,比如Web服务、FTP服务、SMTP服务等。显然,仅仅通过ip地址是无法区分不同的服务的,这里就需要用到 “IP地址+端口号”来区分不同的服务

    通过netstat -a -n -o 查看端口使用情况

    5、协议 

    制定客户端与服务器之间的通讯规则。不同的协议的作用也不同。

    http协议:

            ●HTTP(HyperText Transfer Protocol) 超文本传输协议。
            ●协议双方: 浏览器与web服务器
            ●请求由浏览器发起的
            ●HTTP 协议中明确规定了请求数据和响应数据的格式(报文)
            ○浏览器 请求 资源 要遵守 http 协议:  请求报文(请求行,请求头,请求体)
            ○服务器 返回 资源 要遵守 http 协议:  响应报文(响应行,响应头,响应体)

    下面,就让我们正式开始搭建一个自己的服务器吧!

    搭建服务器牢记这三步:

    • 1. 手写代码,实现服务器功能
    • 2. 运行代码,启动服务
    • 3. 访问服务,测试功能

            第一步:新建一个文件,名为  c:/work/server.js( 文件名及路径名可以自行设置,建议均不使用中文字符), 内容如下

    // 第一步,引入http模块
    const http = require("http");
    
    
    
    //第二步,创建服务
    const server = http.createServer(function (require, respose) {
      // 此处require为客户端向服务器请求的数据包
      // respose为服务器向客户端回应的数据包
    
      // 当服务器接受到客户端的请求时,在客户端上打印一行提示信息
      console.log("有客户端请求数据");
      // 向客户端返回数据(做出响应)
      respose.end("success");
    });
    
    
    
    // 第三步,启动服务
    server.listen(3000, function () {
      console.log("服务启动成功,请在3000端口进行访问......");
    });
    

            第二步:运行js代码,启动服务。 (回车之后不要在命令行中进行任何操作)

            第三步:测试功能

                    打开一个浏览器页面,输入地址:http://localhost:3000,观察效果:

    浏览器中的效果:

    小黑窗中的效果:

                    停止服务:ctrl + c

    拓展

    共享让人来访问

    把localhost改成你自己电脑的ip地址,例如:http://192.xxx.xxx.xxx:3000,再把这个路径发其他人(同一个局域网)来访问。

    展开全文
  • 对于刚开始不会node写接口和调用接口,可以通过这个清晰的初步了解到整个过程。 1.在node官网https://nodejs.org/en/下载node.js 2.在自己电脑中新建一个文件夹,例如:D:/node 3.在该新建的文件夹中,打开命令行...

    对于刚开始不会node写接口和调用接口,可以通过这个清晰的初步了解到整个过程。
    1.在node官网https://nodejs.org/en/下载node.js
    2.在自己电脑中新建一个文件夹,例如:D:/node
    3.在该新建的文件夹中,打开命令行窗口(shift+右击)
    npminitpackage.json4. n p m i n i t 创 建 p a c k a g e . j s o n 文 件 4. 通 过 npm install express –save 安装express模块,后面要用到的
    5.在node文件夹中新建app.js文件,将下面的代码复制到app.js文件中

    var express=require('express');
    var app =express();
    
    //设置跨域访问
    app.all('*', function(req, res, next) {
       res.header("Access-Control-Allow-Origin", "*");
       res.header("Access-Control-Allow-Headers", "X-Requested-With");
       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();
    });
    
    
    
    var questions=[
    {
    data:213,
    num:444,
    age:12
    },
    {
        data:456,
        num:678,
        age:13
        }];
    
        //写个接口123
        app.get('/123',function(req,res){
        res.status(200),
        res.json(questions)
        });
    
        //配置服务端口
        var server = app.listen(3000, function () {
    
        var host = server.address().address;
    
         var port = server.address().port;
    
            console.log('Example app listening at http://%s:%s', host, port);
        })

    6.在命令行中,运行$ node app.js
    这里写图片描述
    7.在浏览器地址栏输入localhost:3000/123
    这里写图片描述

    8.调用接口
    新建文件index.html

    <!DOCTYPE html>
    <html lang="en">
    <head>
        <meta charset="UTF-8">
        <meta name="viewport" content="width=device-width, initial-scale=1.0">
        <meta http-equiv="X-UA-Compatible" content="ie=edge">
        <title>Document</title>
    </head>
    <body>
    
        <script src="https://cdn.bootcss.com/jquery/1.10.2/jquery.min.js">
        </script>
        <script>
         $.ajax({
            type:'get',
            url:'http://localhost:3000/123',
            success:function(data){
            console.log(data);
            },
            error:function(){
            console.log('error');
            }
            })    
        </script>
    </body>
    </html>

    9.在浏览器中打开index.html
    这里写图片描述

    注:每次修改了app.js,调用接口需要重新运行一下$ node app.js

    展开全文
  • 首先我们要去下载一个node安装在电脑上,直接傻瓜式安装下一步下一步即可,不要把...安装在搭建服务器的文件夹上即可 //在script在线上引入地址上加入这个,可以取消在请求的时候携带当前域名下的cookie crossorigin.
  • 教你如何使用node的原生技术来搭建一个简单的本地服务器,可以让同一局域网的小伙伴都能访问到哦
  • 使用node.js搭建服务器

    2020-10-19 20:11:39
    最近需要完成一个课程设计,被项目经理(组长)分配写界面功能,下面小编通过本文给大家分享使用使用node搭建小型服务器的方法,需要的朋友参考下
  • 1.安装node环境 官方下载地址:链接 查看是否安装成功,快捷键win+R弹出cmd命令行: 2.创建项目结构
  • 此demo为一个简单的 node 搭建的静态资源服务器 应用了node的 fs模块、util里面的promisify、handlebars模板引擎等
  • 主要介绍了Node 搭建一个静态资源服务器的实现,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
  • node.js从零开始搭建服务器(详细1)

    千次阅读 2020-01-13 10:08:10
    新建一个文件夹,命名为serve,在该文件下创建app.js子文件,此为服务器入口 初始化node,构建package.json 在serve目录下运行 npm init -y 你会在根目录下得到一个package.json的文件 或者通过 npm init 可能在...
  • 使用node搭建静态资源服务器
  • 我们的目的比较简单,利用node.js在本地搭建HTTP服务器,实现hello word。 系统环境: win7 64bitIP:127.0.0.1Node.js:v6.10.2Npm:3.10.10Git:2.12.2.2-64-bit 基本安装: 1.Node.js安装包及源码下载地址为:...
  • 最近在做微信的应用号小程序开发,小程序的后台数据接口需要https安全请求,所以需要我的nodejs服务器能够提供https的支持,现在就将整个https服务器搭建过程说一下。 搭建教程如下: 首先,我试了一下以前的过期...
  • 使用node创建简单服务器

    千次阅读 2022-04-09 09:57:49
    简单服务器
  • 搭建webSocket服务器,以及运行一个jsmpeg的js文件,Node.js采用C++语言编写而成,它不是Javascript应用,它通过Node.js实现WebSocket服务端,同时也提供客户端JS库。Socket.IO支持以事件为基础的实时双向通讯,它...
  • Node.js是一套用来编写高性能网络服务器的JavaScript工具包,一系列的...这篇文章主要给大家介绍了如何快速搭建Node.Js服务器的方法教程,文中介绍的非常详细,对大家具有一定的参考价值,需要的朋友下面来一起看看吧。
  • 项目需要重新搭建一个服务器来存储图片、提供接口和数据库交互,由此搭建一个简单的服务器,这个系列主要是记录下当时的流程。 一、准备 node环境 express框架 path 路径处理 bodyParser 二、创建 处理app.js主...
  • Node搭建静态服务器

    千次阅读 2020-12-11 20:00:09
    最近用node搞了一个静态服务器,也就是跑一条server,用于提供静态资源访问的功能,如图片、CSS、JS等。 支持对CSS、JS、html、png等资源访问 废话少说,怎么实现呢? 少侠别急,我们需要一个MIME支持,已经有热心...
  • node.js搭建服务器,静态文件可访问
  • 记录搭建服务器的过程,方便以后再次搭建是借鉴和给第一次搭建服务器的朋友借鉴之用。 工具 安装git 执行: sudo yum install git 安装nodejs 官网查看最新版本 下载 先进入/usr/src文件夹,这个文件夹通常用来...
  • node搭建mqtt服务器

    2018-04-04 14:45:28
    node搭建mqtt服务器,通过消息的订阅和发布来传递信息。
  • 这个时候就可以用node自己搭建一个简单的服务器给自己开个服务,用于测试接口 const express = require("express") const app = express() // 跨域处理 app.all('*', function (req, res, next) { res.header(...
  • node.js】搭建本地服务器

    万次阅读 2018-03-28 15:19:07
    前言:简易上手node.js后,我们就可以在自己电脑上创建本地服务器了。 更多内容访问: 1、node.js简易上手① 2、node.js简易上手② 3、搭建可以访问本地文件的服务器① 4、搭建可以访问本地文件的服务器② 5、...
  • 主要介绍了Node.js原生api搭建web服务器的方法步骤,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
  • Node官网介绍(事实也是如此) Node.js 是一个基于 Chrome V8 引擎的 JavaScript 运行环境。...http服务器 网络服务的构建 网络通信 操作数据库 模板引擎的渲染。。。 一、安装: 地址:https://nodejs.org/...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 96,647
精华内容 38,658
关键字:

node搭建服务器

友情链接: clarker model.rar