博客
关于我
Node.js 基础学习(第一天)
阅读量:730 次
发布时间:2019-03-21

本文共 1411 字,大约阅读时间需要 4 分钟。

可谓“后台如虎,前台似牛!”Node.js的性能和灵活性让它成为现代服务器端开发的首选语言。作为一名开发者,掌握Node.js的核心概念至关重要。本文将从HTTP服务器的创建开始,带您领略Node.js的魅力。

创建一个简单的HTTP服务器

Node.js自带了http模块,创建HTTP服务器相对简单。以下是详细的步骤:

  • 引入http模块

    使用require('http')加载内置的HTTP模块。

  • 创建服务器

    使用http.createServer()方法创建服务器实例。该方法接受一个回调函数来处理incoming requests。

  • 配置响应

    在回调函数中,使用response.writeHead()设置HTTP头信息,包括状态码和内容类型。最后,用response.end()发送响应内容,例如“Hello World”。

  • 启动服务器

    调用server.listen()指定端口,例如8888。运行脚本后,在终端中访问http://127.0.0.1:8888/即可。

  • 小贴士

    • 只需一行代码
      简单的“Hello World”服务器仅需几行代码完成。

    NPM管理您的依赖

    Node包的管理离不开NPM(Node Package Manager)。了解它的基本操作是开发的基石。

  • 安装模块

    使用npm install <module>安装第三方模块,例如npm install express安装流行的Express框架。

  • 全局与本地安装

    • 本地安装:模块安装在当前目录下的node_modules,适合项目用。
    • 全局安装:安装在系统目录下,用于全局使用,比如命令行工具。
  • 管理依赖

    查看安装状态用npm list,卸载用npm uninstall,更新用npm update,搜索用npm search

  • package.json管理模块

    每个模块都有自己的配置文件package.json。理解它可以帮助你更高效地管理代码:

  • 基本字段解析

    包名、版本、描述、官网、作者等信息清晰展示模块信息。

  • 依赖管理

    明确模块依赖,自动下载不足模块。

  • 自定义主入口

    package.json中指定main字段,控制模块及入口文件。

  • 操作节点REPL终端

    浏览器无法替代终端,尤其是对Node的交互式解释器REPL(Read Eval Print Loop)。

  • 工作流程

    Node REPL支持多行计算,简单表达式按回车即可。

  • 变量操作

    使用var声明变量,console.log()输出。

  • 高级功能

    使用下划线(_)引用上一个结果,进入多线输入模式。

  • Node.js事件驱动与回调

    Node的异步编程依赖于回调和事件驱动,这大大提高了并发处理能力。

  • 回调机制

    Node的所有I/O操作都通过回调完成,确保不阻塞主线程。

  • 事件驱动模型

    用主循环处理大量事件,保证服务器高效响应。

  • EventEmiiter原理

    Node内核【EventEmitter】实现了观察者模式,广泛应用于文件I/O、网络事件等。

  • 事件类型

    data_receivederror,Node支持众多自定义事件。

  • 注册与触发

    使用on()方法绑定事件响应,emit()触发事件。

  • mastering Node.js

    通过以上知识,您已掌握Node.js的基础操作。建议深入研究Express框架,实践遇到的问题,逐步提升技能。希望您有个“好好”的开发日!

    转载地址:http://ktirz.baihongyu.com/

    你可能感兴趣的文章
    Mysql 整形列的字节与存储范围
    查看>>
    mysql 断电数据损坏,无法启动
    查看>>
    MySQL 日期时间类型的选择
    查看>>
    Mysql 时间操作(当天,昨天,7天,30天,半年,全年,季度)
    查看>>
    MySQL 是如何加锁的?
    查看>>
    MySQL 是怎样运行的 - InnoDB数据页结构
    查看>>
    mysql 更新子表_mysql 在update中实现子查询的方式
    查看>>
    MySQL 有什么优点?
    查看>>
    mysql 权限整理记录
    查看>>
    mysql 权限登录问题:ERROR 1045 (28000): Access denied for user ‘root‘@‘localhost‘ (using password: YES)
    查看>>
    MYSQL 查看最大连接数和修改最大连接数
    查看>>
    MySQL 查看有哪些表
    查看>>
    mysql 查看锁_阿里/美团/字节面试官必问的Mysql锁机制,你真的明白吗
    查看>>
    MySql 查询以逗号分隔的字符串的方法(正则)
    查看>>
    MySQL 查询优化:提速查询效率的13大秘籍(避免使用SELECT 、分页查询的优化、合理使用连接、子查询的优化)(上)
    查看>>
    mysql 查询数据库所有表的字段信息
    查看>>
    【Java基础】什么是面向对象?
    查看>>
    mysql 查询,正数降序排序,负数升序排序
    查看>>
    MySQL 树形结构 根据指定节点 获取其下属的所有子节点(包含路径上的枝干节点和叶子节点)...
    查看>>
    mysql 死锁 Deadlock found when trying to get lock; try restarting transaction
    查看>>