-
每個http請求 可粗略劃分為請求和響應查看全部
-
一、nodejs.org看看nodejs的版本升级,新特性的加入,重要bug的修复等 二、www.npmjs.com模块社区,看他人源代码,省力 三、github.com大量的项目和源码 四、stackoverflow.com技术解答社区以及查询相关资源,环境配置,异常均可找到答案查看全部
-
querystring模块 querystring.stringify(obj,para1,para2)//将对象转化成url中query部分的形式 (序列化) 参数:1.要转化的对象 2.链接符(默认&) 3.键与值之间的符号(默认=) querystring.parse(string,para1,para2)//将query字符串转化成对象(反序列化) 参数: 1.query字符串 2.链接符(默认&) 3.键与值之间的符号(默认=) 4.参数的个数(默认最多1000个,0就没有限制) querystring.escape() 转译 querystring.unescape() 反转译查看全部
-
URL基础知识点 protocol:表示url采用的什么协议 slashes:表示是否有斜线 host:表示主机 post:端口(默认80端口不显示) hostname:主机名称 hash:指的是#号后的内容包含#<br>(锚点) search:指的是?后#前的内容,包含?(查询字符串参数) query:指的是search不包含?的内容(给http服务器发送数据) pathname:指的是路径名称,一般指主域名之后的内容('/返回自己的路径名/') path:路径 href:代表未解析的url地址 参数可选参数1设置为true,对象中query解析出, 可选参数2设置为true,对象中host正确解析,pathname正确解!!!协议protocal未明确。 1)url.format(urlObj): 将对象解析成定位符(也就是URL) 2)url.resolve(from, to):将一个基本URL和指定超链接目标URL合并 绝对URI http://user:pass@www.example.com:80/dir/index.html?uid=1#ch1 协议 登录信息 服务器地址 端口 文件路径 查询字符串 片段标示符 URI :Uniform Resource Identifier,统一资源标识符; URL:Uniform Resource Locator,统一资源定位符; URN:Uniform Resource Name,统一资源名称。 其中,URL,URN是URI的子集。 url.parse(urlString,bool,bool): 将定位符解析成对象,识别无协议的url 第二个参数决定query部分以字符串返回还是以对象形式返回,默认为字符串返回即第二个参数默认为false; 第三个参数表示在没有完整协议串的时候(即无http:/https:)的时候‘//’之后的字符如何解释,若为false即将‘//’之后的当做路径解释,若为true则会将‘//’与‘/’之间的字符串解释为主机查看全部
-
nodejs: 实际上是采用google的chrome浏览器V8引擎,由C++编写的 本质上是一个javascript的运行环境 浏览器引擎可以解析js代码 nodejs可以解析js代码,没有浏览器端各种安全性的限制,还提供许多系统级别的API: 1、文件的读写 2、进行的管理 3、网络通信查看全部
-
厉害了,我的哥查看全部
-
a.EventEmitter支持多个事件监听,最大为10,也可以自定义最大数 //添加监听 var EventEmitter = require('events').EventEmitter; var instance = new EventEmitter(); instance.on('event',function(arguments){}); b.如果超过十个也能执行,不过有可能会造成内存泄漏 //自定义最大数 //每个setMaxListeners针对的是一个特定事件:即event1,event2,... 默认最大都为10,本例为num instance.setMaxListeners(num); c.事件监听之后,需要emit(发射,发出)才会执行 instance.emit('event',arguments) d.判断是否监听 var a = instance.emit('event',arguments) console.log(a) //打印出来的是布尔值true or false e.移除监听事件 //移除单个事件监听 instance.removeListener('event',funcName) //移除事件需具名函数,匿名函数不行 //移除多个事件监听 instance.removeAllListerner() //不传参表示移除所有事件监听 instance.removeAllListerner('event') //移除特定event的所有事件监听 f.计算事件监听数量 //第一种 instance.listeners('event').length //第二种 EventEmitter.listenerCount(instance,'event')查看全部
-
1.加 _ 的是私有模块,通过exports暴露 2.gtuhub仓库主页按T可以呼出搜索查看全部
-
Timing资源加载所要耗费的时间线 ·Stalled:等待时机,浏览器要发生请求,到能发出请求的时间。不包括DNS查询和连接建立时间 ·Proxy negotiation:代理协商的时间 ·Request sent:请求时间。从请求报文的第一个字节发出,到最后一个字节发送完毕的时间 ·Waiting(TTFB):请求发出后至收到第一个字节响应的时间 Content Download:从接受到响应第一个字节开始到最后一个字节结束花费的时间 http请求方法: ·Get:获取,读取数据 ·Post:提交资源 ·Put:更新(头像、资料之类) ·Delete:删除 ·Head 与get方法相同,但服务器不传回资源 状态码:服务器端返回浏览器,告知浏览器请求成功或失败的信息 ·1XX请求已经接受 ·2XX请求成功并处理成功 ·3XX重定向 ·4XX客户端错误 ·5XX服务器端错误 200:OK,请求成功 400:客户端请求有语法错误 401:请求未经授权 403:收到请求,但不提供服务 404:资源未找到 500:服务器端未知错误 503:服务器端当前不能处理请求查看全部
-
http协议 DNS 域名系统 (Domain Name System) 的缩写 http客户端发起请求,创建端口 http服务器在端口监听客户端请求 http服务器向客户端返回状态和内容 请求和响应都发送 http 头和正文信息,http 头发送内容类型、http 状态码,正文是提交的数据或者服务器返回的数据 1.chrome搜索自身的DNS缓存 2.搜索操作系统自身的DNS缓存(浏览器没有找到缓存或缓存已经失效) 3.读取本地的host文件 4.浏览器发起一个DNS的一个系统调用:①宽带运营商服务器查看本身缓存;②运营商服务器发起一个迭代DNS解析的请求;③运营商服务器把结果返回操作系统内核同时缓存起来,④操作系统内核把结果返回浏览器 5.浏览器获得域名对应ip地址后,发起HTTP“三次握手” 6.TCP/IP连接建立起来后,浏览器就可以向服务器发送HTTP请求了。 7.服务器端接受到这个请求,根据路径参数,经过后端处理后,把处理后的一个结果的数据返回给浏览器。 8.浏览器获取到目标网址的数据,例如返回一个HTML文件,HTML文档内的JS/CSS/图片静态资源同样也是一个个HTTP请求,也要包括上述步骤。 9.浏览器根据获取到的资源对页面进行渲染,最终把网页呈献给用户查看全部
-
querystring模块 querystring.stringify(obj,para1,para2)//将对象转化成url中query部分的形式 (序列化) 参数:1.要转化的对象 2.链接符(默认&) 3.键与值之间的符号(默认=) querystring.parse(string,para1,para2)//将query字符串转化成对象(反序列化) 参数: 1.query字符串 2.链接符(默认&) 3.键与值之间的符号(默认=) 4.参数的个数(默认最多1000个,0就没有限制) querystring.escape() 转译 querystring.unescape() 反转译查看全部
-
一、nodejs.org看看nodejs的版本升级,新特性的加入,重要bug的修复等 二、www.npmjs.com模块社区,看他人源代码,省力 三、github.com大量的项目和源码 四、stackoverflow.com技术解答社区以及查询相关资源,环境配置,异常均可找到答案查看全部
-
ctrl+c关闭服务器查看全部
-
chrome://net-internals/#dns 谷歌浏览器缓存查看查看全部
-
querystring模块 querystring.stringify(obj,sign1,sign2)//将对象转化成url中query部分的形式(序列化) 参数:1.要转化的对象 2.链接符(默认&)3.键与值之间的符号(默认=) querystring.parse(string,sign1,sign2,sign3)//将query字符串转化成对象(反序列华) 参数:1.query字符串 2.链接符(默认&)3.键与值之间的符号(默认=)4.参数的个数(默认最多1000个,0就没有限制) querystring.escape(string) //文字转译 querystring.unescape(string) //反转译查看全部
举报
0/150
提交
取消