nodejs项目代码71综合第一天_第1页
nodejs项目代码71综合第一天_第2页
nodejs项目代码71综合第一天_第3页
nodejs项目代码71综合第一天_第4页
nodejs项目代码71综合第一天_第5页
已阅读5页,还剩11页未读 继续免费阅读

付费下载

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

使用Node.js原生模块开发Web应用学习http模块以及url、querystring等核心模块进行Web开发1Serverrequest 任何时候,只要服务器收到客户端请求都会触发该事件 function(request,response)close([callback]) 停止服务器listen(port[,hostname][,backlog][,callback])开始在指定的主机名和端口接受客户端请求连接如果忽略主机名,默认只能接受本机请求如果主机名指定,将会自动监听一个随机可用端口2Response响应对象可写流writeHead(statusCode[,statusMessage][],headers) 设置状态码和响应头setHeader(name,value) 设置响应头write(chunk[,encoding][,callback])向响应流中写入数据end([data][,encoding][,callback])结束响应流sendDate 默认为true,自动向客户端发送响应日期3Request请求对象可读流headers 获取请求头信息,得到一个对象httpVersion 获取客户端使用的HTTP协议版本method 获取客户端请求方法url 获取客户端请求路径4url模块作用:解析和转换url的工具核心模块'‘format(urlObj)parse(urlStr[,parseQueryString])resolve(from,to)5querystring模块parse(str[,sep][,eq][,options])stringify(obj[,sep][,eq][,options])6Express基于Node.js平台,快速、开放、极简的web开发框架7Express8Express原生Node开发,会发现很多问题。比如:呈递静态页面很不方便,需要处理每个HTTP请求路由处理不直观清晰,需要写很多字符串判断和正则表达式不能集中精力写业务,要考虑很多其它的东西Express框架致力于解决上述问题。它非常像前端框架jQuery,改变了我们书写程序的习惯。Express的哲学就是在你的想法和服务器之间充当薄薄的一层。尽量的少干预你,让你充分表达自己的思想,同时提供一些有用的东西。9MAKEITBETTERExpress整体感知Express有着惊艳的路由能力Express中静态资源服务,就是一句话的事儿Express与模板引擎配合,直观清晰。10MAKEITBETTER中间件11MAKEITBETTER中间件中间件就是封装处理HTTP请求的功能函数程序角度:中间件是一个有3个参数的函数:一个请求对象一个响应对象一个next函数中间件是在管道中执行的在Express中,通过调用use向管道中插入中间件在管道的最后放一个捕获一切的请求处理中间件,一般返回40412中间件请求如何在管道中终止?终止有传给每个中间件的next函数决定如果没有传递next或者传递了next没有调用,管道就会终止13中间件Connect是一个基于Node.js的中间件框架,如果把一个HTTP处理过程比作是污水处理,中间件就像一层层的过滤网,每个中间件在HTTP处理过程中通过改写Request或Response对象的数据、状态实现了特定的功能14路由处理中间件app.get|post作用:只处理特定HTTP动词请求的中间件第一个参数必须是路径第二个参数就是回调函数,回调函数中第一个参数为请求对象req,第二个参数为响应对象res,第三个参数是next函数如果不调用next,管道就会终止,也不会再有处理器或中间件做后续处理,如果不调用next,应该发送一个响应到客户端,否则客户端会保持挂起并最终导致超时在处理过程中,如果在一个中间件发送了响应,也调用了next,就最好不要在后续的中间件中发送响

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论