为了账号安全,请及时绑定邮箱和手机立即绑定

进击Node.js基础(一)

Scott 全栈工程师
难度中级
时长 3小时27分
学习人数
综合评分9.50
664人评价 查看评价
9.8 内容实用
9.4 简洁易懂
9.3 逻辑清晰
  • http协议 DNS 域名系统 (Domain Name System) 的缩写 http客户端发起请求,创建端口 http服务器在端口监听客户端请求 http服务器向客户端返回状态和内容 请求和响应都发送 http 头和正文信息,http 头发送内容类型、http 状态码,正文是提交的数据或者服务器返回的数据 1.chrome搜索自身的DNS缓存 2.搜索操作系统自身的DNS缓存(浏览器没有找到缓存或缓存已经失效) 3.读取本地的host文件 4.浏览器发起一个DNS的一个系统调用:①宽带运营商服务器查看本身缓存;②运营商服务器发起一个迭代DNS解析的请求;③运营商服务器把结果返回操作系统内核同时缓存起来,④操作系统内核把结果返回浏览器;⑤最终浏览器拿到了目标网站对应的IP地址 5.浏览器获得域名对应ip地址后,发起HTTP“三次握手” 6.TCP/IP连接建立起来后,浏览器就可以向服务器发送HTTP请求了。 7.服务器端接受到这个请求,根据路径参数,经过后端处理后,把处理后的一个结果的数据返回给浏览器。 8.浏览器获取到目标网址的数据,例如返回一个HTML文件,HTML文档内的JS/CSS/图片静态资源同样也是一个个HTTP请求,也要包括上述步骤。 9.浏览器根据获取到的资源对页面进行渲染,最终把网页呈献给用户 http头和正文信息 HTTP头发送的是一些附加的信息:内容类型、服务器发送相应的日期、HTTP状态码 正文就是用户提交的表单数据。
    查看全部
    1 采集 收起 来源:HTTP知识先填坑

    2017-11-22

  • 想让模块成为特别的对象类型,使用module.export; 想让模块成为传统的模块实例,使用export. module.export是真实存在的东西, export是module.export的辅助方法。 module.export最终返回给调用者; export挂载属性和方法,然后把属性赋给module.export 如果module.export已经有了属性,那么export上的属性会被忽略 推荐export方式
    查看全部
  • 模块的流程
    查看全部
  • @模块与包管理工具 js的天生缺陷——缺少模块化管理机制 ·表现>> JS中容易出现变量被覆盖,方法被替代的情况(既被污染)。特别是存在依赖关系时,容易出现错误。这是因为JS缺少模块管理机制,来隔离实现各种不同功能的JS判断,避免它们相互污染。 ·解决>> 经常采用命名空间的方式,把变量和函数限制在某个特定的作用域内,人肉约定一套命名规范来限制代码,保证代码安全运行。jQuery中有许多变量和方法,但是无法直接访问,必须通过jQuery,$调用 各个方法。 【Commonjs规范】 不同于jQuery,Commonjs是一套规范,约定了js如何组织,如何编写,包括包,二进制,套接字,单元测试等等。大部分标准在拟定和讨论之中,首先把执行不同任务的代码块和代码文件看为独立的模块,每一个模块都是一个单独的作用域,但不是孤立的,可能存在依赖关系。每个模块分为三个部分,定义、标识和引用。这套规范与现实产品如node.js相互影响,良性循环。 【NodeJs的模块管理机制】 基于commonjs实现了模块管理系统。node中每一个js文件都是一个独立的模块,在其内部不需要有命名空间,不需要担心变量的污染和方法定义时的隔离。同时模块之间可以组合形成更强大的模块或功能包。npm即是用来管理各种功能包的。
    查看全部
  • 1.模块的分类: 核心模块、文件模块、第三方模块; 2.模块的引用:可以通过路径和模块名。模块名引用最终也会被映射为路径。包含了核心函数的核心模块会在node启动时被预先加载。 3.文件模块、第三方模块 都是非核心模块,文件模块就是本地模块
    查看全部
    0 采集 收起 来源:模块的分类

    2017-11-22

  • 带着问题去看源码,就像有了线索一样。
    查看全部
    0 采集 收起 来源:HTTP 源码解读

    2017-11-21

  • 一定要有目的的看代码,不要一行行,为了读代码而读代码。
    查看全部
    0 采集 收起 来源:HTTP 源码解读

    2017-11-21

  • var http =require('http'); var querystring =require('querystring'); var postData = querystring.stringify({ 'content':'小路人注水测试评论', 'mid':8837 }); var options={ hostname : 'www.imooc.com', port:80, path:'/course/docomment', method:'POST', headers:{消息头}); var req=http.request(options ,function (res){ console.log('Status: '+res.statusCode); console.log('headers: '+JSON.stringify(res.headers)); res.on('data',function(chunk){ console.log(Buffer.isBuffer(chunk)); console.log(typeof chunk); }); res.on('end',function(){ console.log('小路人注水评论完毕!'); }); }); req.on('error',function(e){ console.log('Error: '+e.message); }); req.write(postData); req.end();
    查看全部
  • request 请求地址,请求端口,请求路径,请求头,请求方式
    查看全部
  • www.npmjs.com 开源社区网址 一、nodejs.org看看nodejs的版本升级,新特性的加入,重要bug的修复等 二、www.npmjs.com模块社区,看他人源代码,省力 三、github.com大量的项目和源码 四、stackoverflow.com技术解答社区以及查询相关资源,环境配置,异常均可找到答案
    查看全部
  • this指针的讲解
    查看全部
  • http协议 DNS 域名系统 (Domain Name System) 的缩写 http客户端发起请求,创建端口 http服务器在端口监听客户端请求 http服务器向客户端返回状态和内容 请求和响应都发送 http 头和正文信息,http 头发送内容类型、http 状态码,正文是提交的数据或者服务器返回的数据 1.chrome搜索自身的DNS缓存 2.搜索操作系统自身的DNS缓存(浏览器没有找到缓存或缓存已经失效) 3.读取本地的host文件 4.浏览器发起一个DNS的一个系统调用:①宽带运营商服务器查看本身缓存;②运营商服务器发起一个迭代DNS解析的请求;③运营商服务器把结果返回操作系统内核同时缓存起来,④操作系统内核把结果返回浏览器;⑤最终浏览器拿到了目标网站对应的IP地址 5.浏览器获得域名对应ip地址后,发起HTTP“三次握手” 6.TCP/IP连接建立起来后,浏览器就可以向服务器发送HTTP请求了。 7.服务器端接受到这个请求,根据路径参数,经过后端处理后,把处理后的一个结果的数据返回给浏览器。 8.浏览器获取到目标网址的数据,例如返回一个HTML文件,HTML文档内的JS/CSS/图片静态资源同样也是一个个HTTP请求,也要包括上述步骤。 9.浏览器根据获取到的资源对页面进行渲染,最终把网页呈献给用户 http头和正文信息 HTTP头发送的是一些附加的信息:内容类型、服务器发送相应的日期、HTTP状态码 正文就是用户提交的表单数据。
    查看全部
    0 采集 收起 来源:HTTP知识先填坑

    2017-11-19

  • 1.作为对象的方法,this-->pet。 2.直接调用,函数的调用,文件跑到浏览器环境里this-->window,环境是node里this-->global。 3.在构造函数里使用this,this指向新构建好的实例对象。
    查看全部
  • 虽然不知道老师在讲什么,但是还是很认真的听完的了!!
    查看全部
    6 采集 收起 来源:HTTP 源码解读

    2017-11-15

  • 1xx--请求已经接收,继续处理 2xx--请求已经成功接收并处理 3xx--重新下,要完成的请求必须要进行进一步的操作 4xx--客户端错误,请求的时候有语法错误或者这个请求无法实现 5xx--服务器端错误,可能无法实现这个合法的请求 200--OK 400--客户端请求有语法错误,服务器端无法理解 401--请求未经授权 403--服务器端收到请求但是拒绝提供服务,或者没有权限 404--未找到资源 500--服务器端发生了不可预期的错误 503--服务器端当前还不能处理这个请求,可能过段时间才能恢复正常
    查看全部

举报

0/150
提交
取消
课程须知
我们的教程面向的同学是:有 JavaScript 基础的同学,如果有过任何后台语言开发的经验更适合,对于有基础的同学,可以快进跳着看教程,不必拘束于每一分钟都听,很多时候其实是思路,思路打通了,很多技术细节也就不用纠结了。
老师告诉你能学到什么?
从 Node.js 基础知识入手,比如安装,环境配置、开发环境等,进一步熟悉 Node.js API ,一些 HTTP 知识,并且对模块的概念和使用更加熟悉,从而进阶到模块或者插件的开发,最终能够借助 Node.js 快速实现特定的需求。

微信扫码,参与3人拼团

意见反馈 帮助中心 APP下载
官方微信
友情提示:

您好,此课程属于迁移课程,您已购买该课程,无需重复购买,感谢您对慕课网的支持!