在Unix中流是一个标准的概念,有标准的输入、输出和标准的错误例如:打印出所有的js文件交给grep 来过滤出包含http文件的内容,称之为Unix的管道cat *.js | grep http从上节得知Buffer是保存字节的数据,而流是用来暂存和移动数据的,它俩通常是结合起来来使用,我们来拷贝文件,像读取logo,是全部的读取入到内存中,然后再写入到文件中,对于体积比较大的的文件就不够用了假设
网络的基础是数据的传输和处理,Buffer缓冲,在NodeJs中处理二进制的数据,为什么要折腾出一个Buffer呢,因为JavaScript字符串是一个utf-8编码存储的,处理二进制的能力是很弱的,而网络层对于不同资源的请求、响应甚至是文件都是用二进制进行交互的,所以NodeJs就有了这么一个接口,专门存放二进制的缓存区,并提供了一些方法来对这些缓存区的数据进行进一步的处理,Buffer在Nod
在重构代码之前,先要了解下什么是https?https协议:基于ssl/tls的http协议,所有的数据都是在ssl/tls协议的封装之上传输的,也就是说https协议是在http协议基础上添加了ssl/tls握手以及数据加密传输,因此这就是两者之间最大的区别。https模块专门处理加密访问的,区别在于搭建https服务器的时候需要有ssl证书。模拟搭建https服务器var https
爬虫基于回调和事件的方式去实现,回调也是被诟病已久的问题尤其是callback这种,无论是阅读还是调试都很费劲,甚至我们连代码的堆栈都看不到,这是一种反人类的写法,Promise来拜托这种痛苦的方式传统方式实现动画效果:<!DOCTYPE html> <html> <head> <meta charset="UTF-8">
http的get/request可以从后台发起一个http请求从而可以获取远程的资源,甚至是更新和同步远程的资源,非常有用。本质上request返回的是一个clientRequest类的实例这个clientRequest的实例是一个可写的流,如果你需要使用post请求上传一个文件,那么这个文件就会被写入到clientRequest对象里面,该怎么用的?语法:http.request(options
NodeJs的事件模块在爬虫代码中有个on('data')事件,为什么响应的res回有一个on方法呢,那这个on做什么事情呢,要回答这些问题,要从事件模块说起,在NodeJs中不存在浏览器中的冒泡、捕获这些行为的,所以NodeJs中实现的events这个模块,里面的大多数模块都集成了这个模块,所以events是最重要的一个模块,它只对外暴露了一个对象,就是eventImit,作用有两个分别是事件的
HTTP爬虫网络上每时每刻都有海量的请求,有从客户端到服务器端的,也有服务器端到服务器端的一般在浏览器里,我们是通过ajax来完成表单的提交或者是数据的获取,那在http模块里呢get和request这两个接口来完成数据的获取或者是提交。来个实例,爬一下51cto博客的数据先从最简单的爬虫开始,爬源码示例代码如下:var http = require('http')
使用Apache 下的ab进行测试按照:Apache ab(压力测试工具)教程参考如下:http://blog.csdn.net/ahaaaaa/article/details/51514175 编译版本安装与配置:http://www.cnblogs.com/gsls200808/p/4506301.htmlmsi:版本下载http://archive.apache.org/dist/httpd
http源码解读什么是作用域?作用域和调用函数访问变量的能力有关作用域分局部作用域和全局作用域,同时作用域往往和变量有关系,处在局部作用域里面可以访问到全局作用域的变量,反之则访问不到实例如下:var globalVariable = 'This is global variable' function globalFunct
在上面的步骤中扫通了http请求到结束的一个闭环包括请求时的头信息、响应时候服务器返回的头信息,状态码等等这些在Node http模块中都能获取到并且有相应的接口去组装这些信息和返回它们,同时呢这些http接口在设计的时候就考虑了可以支持许多可以支持http协议的特性而这些特性在传统的开发中却很难使用,比如大字节的块编码消息为了让用户在请求和响应的时候使用流的形式操作数据接口缓存整个请求或者响应,
什么是http及相关的知识什么是http?http就是一种协议计算机之间要共同遵守这个协议的规则才能彼此之间相互通信当然现在不局限于计算机,手机、冰箱、电视机等智能终端这个协议在场景中的使用流程是如何的?通常由一个http客户端发起一个请求,创建端口而http服务器在端口监听客户端的请求一旦收到请求,http服务器向客户端返回一个状态和相对应的内容什么是http及相关的知识什么是http?http
对url解析的时候,可以用一个querystring把url的query解析成一个对象在前台还后台开发中遇到的最多的就是参数的处理我们需要传递不同用途的参数追加到url地址中发送给服务器而服务器拿到是一个字符串的参数串不知道个数、参数、参数名这就需要一个途径需要把参数给一个一个地拎出来放到对象里面我们可以遍历这个对象也就获取里面的值在NodeJs中,querystring给我们提供了这个功能que
URL模块:URL:统一资源定位符,偏重定位URI:统一资源标识符,偏重标识网站就是URL,是一个具体的符号说明了要通过哪一种协议来访问一个资源URI更抽象,是一个字符串格式规范 是一种概念上的定义事实上,URL是URI的子集在该模块中有三个方法url.parse(urlStr, [parseQueryString], [slashesDenoteHost])解析地址,解析成一个对象url.for
http,process等等这些都是模块一、Node.js的模块与Commonjs规范1.js的天生缺陷——缺少模块化管理机制·表现——JS中容易出现变量被覆盖,方法被替代的情况(既被污染)。特别是存在依赖关系时,容易出现错误。这是因为JS缺少模块管理机制,来隔离实现各种不同功能的JS判断,避免它们相互污染。·解决——经常采用命名空间的方式,把变量和函数限制在某个特定的作用域内,人肉约定一套命名规
一、概念node.js采用Google Chrome浏览器规范引擎 由C++语言编写的。本质上是一个JavaScript的运行环境nodejs 不仅仅能解析js代码而且没有浏览器端各种安全的级别限制还提供一些系统级别的API,比如:1.文件的读写2.进程的管理3.网络的通信09年面世以来一直很火其次它很强,借助于NodeJs所能完成的事情,当然不仅仅与此Node-Webkit appjs 相似的应
Copyright © 2005-2024 51CTO.COM 版权所有 京ICP证060544号