Node.js_1.1

Node.js简介

  • Node.js是一个能够在服务器端运行JavaScript的开源代码、跨平台JavaScript运行环境
  • Node采用Google开发的V8引擎运行js代码,使用事件驱动、非阻塞和异步I/O模型等技术来提高性能,可优化应用程序的传输量和规模
  • Node大部分基本模块都用JavaSprit编写。在Node出现之前JS通常作为客户端程序设计语言使用,以JS写出的程序通常在用户的浏览器上运行

安装Node环境

  • 查看当前Node环境版本号

    • node --version
  • 下载:https://nodejs.org/en/download/
  • 安装
    • next
    • 安装过的重新安装就会升级
  • 确认Node环境变量是否安装成功
    • 在node安装目录下cmd执行node --version或者node -v
  • 环境变量

执行js代码

  • 编写js代码
  • 打开终端,定位到脚本文件所属的目录
  • 输入node 文件名执行对应的文件
  • 【注意】文件名不要使用node.js执行对应的文件
  • 在Node中,采用EcmaScript进行编码,没有BOM\DOM

读写文件

//fs是file-system的简写,就是文件系统的意思
//在Node中如果想要进行文件操作,就必须引入fs这个核心模块
//在fs这个核心模块中,就提供了所有的文件操作相关的API
//例如:fs。readFile就是用来读取文件的

//1.使用require方法加载fs模块
var fs=require("fs");

//2.读取文件
//  第一个参数就是要读取的文件路径
//  第二个参数是一个回调函数
//      error
//          如果读取失败,error就是错误对象
//          如果读取成功。error就是null
//      data
//          如果读取失败,data就是错误对象
//          如果读取成功,data就是读取到的数据
fs.readFile("./Node.js简介.md", function(error, data) {
    // <Buffer 23 23 23 20 4e 6f 64 65 2e 6a 73 e7 ae 80 e4 bb 8b 0d 0a 0d 0a 2a 20 4e 6f 64 65 2e 6a 73 e6 98 af e4 b8 80 e4 b8 aa e8 83 bd e5 a4 9f e5 9c a8 e6 9c ... 1740 more bytes>
    // 不是0 1 是因为二进制转换为16进制
    // 文件中存储的都是二进制数据
    // 可以通过toString()方法转换为我们可以看懂的
    console.log(data.toString());
            //通过判断error来判断有没有错误发生
        if (error) {
            console.log("有错误发生");
        } else {
            console.log(data.toString());
        }
})

写文件

//1.使用require方法加载fs模块
var fs=require("fs");

//第一个参数:文件路径
//第二个参数:文件内容
//第三个参数:回调函数
//  erroe
//      成功:文件写入成功、error是null
//      失败:文件写入失败、error是错误对象
fs.writeFile('./helle')

node创建服务器

// 1.加载http核心模块
var http = require('http');
// 2.使用http.createServer()方法创建一个WEB 服务器
//   返回一个Server实例
var server = http.createServer();
// 3.服务器
//  发请求 接受请求 处理请求    发送响应
//  注册request 请求事件
//  当客户端请求过来,就会自动触发服务器的request请求事件,然后执行第二个参数:回调函数
server.on('request', function(request, response) {

    // request 请求事件处理函数,需要接受两个参数
    //  Request请求对象
    //      请求对象可以用来获取客户端的一些请求信息,例如请求路径
    //  Response 相应对象
    //      响应对象可以用来给客户端发送响应消息
    console.log('收到客户请求,请求路径是:' + request.url);

    // response对象有一个方法:write可以用来给客户端发送响应数据
    // write可以使用多次,但是最后一定要用end来结束响应,否则客户端会一直等待
    // response.write("hello")
    // response.write(" world")

    // 结束响应并且给客户端发送响应
    response.end('hello world');

})

// 4.绑定端口号,启动服务器
server.listen(3000, function() {
    console.log("服务器启动成功");
});

Node中的JavaScript

  • EcmaScript

    • 没有DOM\BOM
  • 核心模块

    在Node中为JavaScript提供了很多服务器级别的API,这些API绝大多数都被包装到了一个具名的核心模块中了。例如文件操作的fs核心模块,http服务构建的http模块,path路径操作模块,os操作系统信息模块

    //require用来加载核心模块
    var fs=require('fs');
  • 第三方模块
  • 用户自定义模块
    //require 方法的作用
    //        1.加载文件模块并执行里面的代码
    //        2.拿到被加载文件模块导出的接口对象
    //        每个文件模块中都提供一个对象exports
    //            exports默认是一个空对象
    //            需要把所有需要被外部访问的成员添加到这个对象中

    Web服务器开发

    • ip地址和端口号

      • ip地址用来定位计算机
      • 端口号用来定位具体的应用程序
      • 一切需要联网通信的软件都会占用一个端口号
      • 端口号的范围从0-65536之间
      • 计算机中有一些默认端口号,最好不要去使用
        • 例如http服务的80

原文地址:https://www.cnblogs.com/SSPOFA/p/12222717.html

时间: 2024-08-30 09:03:32

Node.js_1.1的相关文章

Node.js_1

1.添加EventEmitter模块 var EventEmitter = require('events').EventEmitter 2.实例一个EventEmitter对象 var life = new EventEmitter() 3.可通过.setMaxListeners()来修改最大监听数,默认10个 life.setMaxListeners(11) 4.事件监听有两种方法,两种方式 function water(who){ console.log('给 ' + who +' 倒水'

node.js的安装及配置

一.安装 直接在浏览器搜索node.js,在官网上下载(一般旧版的更加稳定,比如下载4.4.7版本) 点击DOWNLOADS 往下翻,点击Previous Release Windows下载msi(64位/32位) 根据提示一步步安装,安装之后的文件夹如下: 在cmd命令行下输入node -v,如果出现如下,说明安装成功: 二.关于配置 在安装路径下新建两个文件夹: 创建完两个空文件夹之后,打开cmd命令窗口,输入 npm config set prefix "D:\Program Files

Node.js: Extend and Maintain Applications + large scale

https://blog.risingstack.com/node-js-mysql-example-handling-hundred-gigabytes-of-data/ My secondary goal with this article is to help you decide if Node.js + MySQL is a good fit for your needs, and to provide help with implementing such a solution. h

Puppet node节点的特性(十二)

前言: 生产机器很多通常会新建nodes.pp文件和site.pp文件平级,存放于/etc/puppet/manifests/nodes.pp文件,这种方法比较常用.当然也有其他办法直接写入site.pp文件. nodes.pp文件主机匹配,支持正则表达式和继承. //:正则匹配 "":精确匹配 inherits:继承 实例: 先正则匹配然后在精确匹配. node /sh-(proxy|web)\d+/ {   case $::hostname {     "sh-proxy

1.node.js windows环境搭建

作为服务端运行javascript的平台的NodeJs,把前台javascript移到了服务器端,Google V8引擎使其运行效率非常高,它可以异步,无任何阻塞运行程序.nodejs包含http服务器,可以为我们实现 web系统设计,客户端javascript编译器,等一系列的功能. 工具/原料 windows系统电脑 ,电脑可以上网 方法/步骤 下载windows平台nodejs环境安装包,百度一下nodejs官网,找到DOWNLOADS点击,找到Windows Installer 如果为6

hidden node and exposed node problem

Exposed node problem In wireless networks, theexposed node problem occurs when a node is prevented from sending packets to other nodes because of a neighboring transmitter. Consider an example of 4 nodes labeled R1, S1, S2, and R2, where the two rece

在Node.js中使用RabbitMQ系列二 任务队列

在上一篇文章在Node.js中使用RabbitMQ系列一 Hello world我有使用一个任务队列,不过当时的场景是将消息发送给一个消费者,本篇文章我将讨论有多个消费者的场景. 其实,任务队列最核心解决的问题是避免立即处理那些耗时的任务,也就是避免请求-响应的这种同步模式.取而代之的是我们通过调度算法,让这些耗时的任务之后再执行,也就是采用异步的模式.我们需要将一条消息封装成一个任务,并且将它添加到任务队列里面.后台会运行多个工作进程(worker process),通过调度算法,将队列里的任

node.js搭建代理服务器请求数据

1.引入node.js中的模块 1 var http = require("http"); 2 var url = require("url"); 3 var qs = require("querystring"); 2.创建服务器 //用node中的http创建服务器 并传入两个形参 http.createServer(function(req , res) { //设置请求头 允许所有域名访问 解决跨域 res.setHeader("

第十章—DOM(0)—NODE类型

DOM1定义了一个node接口,该接口由DOM的所有节点类型实现. 所有的节点都存在这样或那样的关系.在HTML中,head,body可以看出是html的子元素,html是head,body的父元素,而head,body互为同胞元素. 这里要注意一个概念:nodeList 输出: 如下例子: 1 <div id="myDiv"> </div><!-- 此处有空格 --> 2 <script> 3 var div = document.ge