位置: 编程技术 - 正文

Nodejs学习item【入门手上】(nodejs实战教程)

编辑:rootadmin

推荐整理分享Nodejs学习item【入门手上】(nodejs实战教程),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:nodejs实战教程,nodejs xhr,nodejs基础教程,nodejs示例,nodejs xhr,nodejs实战教程,nodejs xhr,nodejs xhr,内容如对您有帮助,希望把文章链接给更多的朋友!

一、 安装

首先,去 下载安装。我下的版本是0.8.。安装很简单,下一步下一步就哦了。然后在path中配置一下安装目录即可,msi会把npm(Node Package Manager)一并装上。

我的安装目录是C:Program Files (x)nodejs。这时使用cmd命令窗口 node -v ,npm -v命令查看下安装的版本

1.1、helloworld

在Node.js工程目录中新建一个文件hello.js,里面敲一行代码

进入命令行控制台,进入到Node.js工程目录敲node hello.js

控制台输出了“hello, nodejs.”

1.2、web版的helloworld

在Node.js工程目录中新建一个http.js,代码如下

在命令行中启动服务,敲 node http.js

然后打开浏览器地址栏输入 World! 就成功了。

node.js的版本一定和API同步

node.js的版本号有规律,偶数版本为稳定版本,奇数版本非稳定版本

2 HelloWorld代码分析

好啦,从现在开始逐行分析我们的HelloWorld。

引入模块

Nodejs学习item【入门手上】(nodejs实战教程)

require方法用来引入一个模块,参数是模块的名字。比如File System模块,可以这么引入:

我们可以把require()方法当做全局方法使用,但实际上它更像属于某个模块的本地方法,它的文档参考这里: Stream接口。 第二个参数的类型是http.ServerResponse,实现了Writeable Stream接口。

Stream的API在这里: World!”消息。

分析客户端请求

前面我们分析了http.createServer方法,它的参数是一个带两个参数的方法,一个代表了客户端发过来的请求,一个代表了要回写给客户端的响应。我们来看看request参数。

request是http.IncomingMessage的实例,通过这个实例,我们可以拿到请求参数,比如HTTP方法、HTTP版本、url、头部等,具体的API在这里: HelloWorld2.js,浏览器访问 World!”字样。这个响应是通过http.ServerResponse的实例response发送给客户端的。

http.ServerResponse也是一个Stream,还是一个EventEmitter。我们通过它给客户度返回HTTP状态码、数据、HTTP头部等信息。

HTTP模块 在Node.js的HTTP模块,状态行就是通过http.ServerResponse的writeHead方法写给客户端的。writeHead方法原型如下:

这个方法的第一个参数,就是statusCode,也就是、之类的数字,剩下的参数是可选的。最后一个参数是headers,你可以在这里使用JSON对象表示法来写一些HTTP头部,比如:{“Content-Type”:”text/plain”,”Content-Length”:}。第一个可选参数statusMessage用来指定一个状态描述消息,可以不填写。

HTTP头部

头部就是一些key-value对,比如我们在HelloWorld里看到的”Content-Type”,就是用来说明数据类型的头部标签,对应的可能是文本文件、图片、视频、二进制等。类似的还有”Content-Length”,用来指定数据长度。还有很多很多,比如”Date”、”Connection”等。具体还是参考前面的链接吧。

头部还可以使用http.ServerResponse的response.setHeader(name, value)方法来单独设置,一次可以设置一个HTTP头部。

数据

头部之后就是数据了,有些状态码,比如,后续都会有一些数据。而有些,比如、、、之类的,多数没有数据。

数据通过http.ServerResponse的write方法来写回给客户端,比如这样:

这里要提一点,HTTP常见的数据传输编码方式有两种:

设置Content-Length,传输固定长度的数据设置Transfer-Encoding头部为chunked,分块传输数据

像我们现在的HelloWorld示例,没有设置Content-Length头部,Node.js的HTTP模块就默认为chunked编码。

我们使用Chrome浏览器的开发者工具来查看网络数据,可以很明确的看到。如下图所示:

HTTP响应

我标注出来的三处,都是HelloWorld示例传递给浏览器的HTTP头部信息。

我们通过http.ServerResponse的write方法向客户端写数据。你可以一次写入所有数据,也可以把数据分开来多次写入。当要传输的数据量较大时,分多次写入就是比较合理的做法,比如你向客户端发送大文件,就比较适合分多次写入,也可以利用Node.js的异步特性,获得不错的性能。

node.js插件nodeclipse安装图文教程 在eclipse插件中,node.js插件中比较知名的是nodeclipse,本文为大家介绍了nodeclipse安装教程,供大家参考,具体内容如下安装nodeclipse1.依次点击工具→插件

Node.js插件安装图文教程 Node.js简介Node.js是一个Javascript运行环境(runtime)。实际上它是对GoogleV8引擎进行了封装。V8引擎执行Javascript的速度非常快,性能非常好。Node.js对一些特殊

node.js从数据库获取数据 本文需要用node.js做一个从Sqlserver获取数据并显示到页面上的小功能,下面就为大家分享:app.js:varsqlbll=require('./routes/sqlbll');...app.get('/sqlbll/:ver',function(r

标签: nodejs实战教程

本文链接地址:https://www.jiuchutong.com/biancheng/370726.html 转载请保留说明!

上一篇:Windows 系统下设置Nodejs NPM全局路径(window系统设置)

下一篇:node.js插件nodeclipse安装图文教程(nodejs 插件开发)

  • 汇算清缴退税会计科目
  • 福建国税网上办税平台登录
  • 不征税收入有哪些类型
  • 事业单位净资产为负数怎么办
  • 邀请客户参加公司会议
  • 如何分清进口农产品增值税抵扣率
  • 通行费发票勾选认证有多少就可以抵扣多少吗
  • 代扣代缴车船税手续费比例
  • 冲回存货跌价准备计提递延所得税
  • 营改增后企业出售房产涉税
  • 公路工程营改增
  • 从关联企业获得非工资报酬怎么缴纳个税?
  • 小型微利企业所得税优惠政策
  • 公司开年会的费用怎么入账
  • 有限合伙企业无限合伙企业
  • 个人捐款单位需要记账吗
  • 建筑业增值税税率2022
  • 增值税怎么勾选
  • 出现一窗式比对失败,该纳税人没有防伪税控比对信息!
  • 什么样的凭证是原始凭证
  • 免征的税款每月几号申报
  • 企业投资收益如何做账
  • thinkphp怎么用
  • 个税的适用税率有哪些
  • PHP:xml_set_default_handler()的用法_XML解析器函数
  • php登录注册
  • php常用的设计模式在开发中的实例
  • 单反镜头直径越大是不是就越好
  • 增值税专用发票有几联?
  • 圣克鲁斯岛战役
  • php上级目录
  • 一般纳税人收到小规模专票怎么抵扣
  • 委托研发技术合同登记
  • web自动化测试平台
  • 多线程 cpp
  • 返还土地出让金违法吗?
  • 待抵扣进项税额的账务处理
  • 售后租回交易的资产销售价低于市场价承租人作为
  • 自动结转制造费用生成不了凭证怎么办
  • 预算会计年末怎么结账
  • 固定业户应当向其机构
  • 金蝶软件如何新增账套
  • 劳务外包人员算从业人员期末人数么
  • 商品入库进项税不抵扣会计分录
  • 销项税额和进项税额月底怎么结转
  • 进项税额转出是借方科目还是贷方科目
  • 出口抵减内销产品应纳税额
  • 社保缴费基数调整后对个人的影响
  • 应收账款已收回95元
  • 非包销的视同买断的账务处理是?
  • 收付实现制与权责发生制的例题
  • sql安装不上去
  • sqlserver isnull在数据库查询中的应用
  • mysql主从复制原理详解
  • sql server使用教程(图文)
  • win10预览版好吗
  • 注册表隐藏桌面图标
  • linux开机启动ftp
  • vtpwsr
  • windows 注册表命令
  • 控制面板中的添加和删除在哪里
  • xp双系统怎么切换系统
  • winxp开启远程控制
  • win8 64位触控版导致笔记本键盘失灵解决方法
  • win1020h2版好不好
  • win10累积更新卡在正在下载
  • 最新版win10版本号
  • 计算字符串的长度使用哪个函数?
  • asp.net mvc view
  • js dom方法
  • 酷狗模拟场景怎么用
  • 安卓高德地图开启相机权限
  • jquery解决跨域问题
  • 增值税预缴税款在主表怎么填写
  • 河北省网上税务局电子税务局
  • 物业收电费有什么猫腻
  • 飞机票其他税费包括什么内容
  • 开票税额超出1万怎么办
  • 工会活动经费的请示
  • 鲨鱼记账咋记账
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设