nodejs API
1、querystring参数处理
序列化
> querystring.stringify({'name':'scott',course:['jade','node'],from:''})
'name=scott&course=jade&course=node&from='
> querystring.stringify({'name':'scott',course:['jade','node'],from:''}, ',')
'name=scott,course=jade,course=node,from='
> querystring.stringify({'name':'scott',course:['jade','node'],from:''}, ',', ':
')
'name:scott,course:jade,course:node,from:'
反序列化
> querystring.parse('name=scott&course=jade&course=node&from=')
{ name: 'scott', course: [ 'jade', 'node' ], from: '' }
转义
> querystring.escape('你好')
'%E4%BD%A0%E5%A5%BD'
反转义
> querystring.unescape('%E4%BD%A0%E5%A5%BD')
'你好'
2、http
从浏览器输入网址或F5刷新页面,首先进行域名解析:
(1)浏览器搜索自身的DNS缓存
(2)搜索操作系统自身的DNS缓存(浏览器没有找到自身缓存或缓存已失效)
(3)读取本地的host文件(如果2步骤没有找到域名的ip)
(4)浏览器发起一个DNS的一个系统调用(如果步骤3没有找到域名的ip)
(5)浏览器获得域名对应的ip地址后,发起http“三次握手”
(6)TCP/IP连接建立起来以后,浏览器就可以向服务器发送请求
(7)服务器端接收到请求后,根据路径参数,经过后端的一些处理之后,把处理后的结果数据返回给浏览器
(8)浏览器拿到某个网站完整的HTML页面代码,在解析和渲染这个页面的时候,页面的js、css、图片静态资源,也同样是一个个http请求,需要经过上面的主要步骤。
http请求方法:GET POST PUT(更新) DELETE(删除)...
响应的状态码:1xx:指示信息,表示请求已经接收,继续处理;2xx:表示请求成功;
400:客户端请求有语法错误,服务器端不能理解;
401:请求没有授权;
403:服务器端收到请求,拒绝提供服务,可能没有权限等;
404:请求资源不存在或是URL地址输入错误;
503:服务器端当前不能处理客户端的请求。
3、http上下文、作用域
上下文与this有关,是调用当前可执行代码的引用。
4、
http性能测试 Apache自带的ab
>ab -n1000 -c10 http://localhost:8888/

////////////////////////////
全局变量
path、process、url
////////////////////////////
self.emit('request', req, res);
nodejs API的更多相关文章
- NodeJS API简介
简单介绍下NodeJS现有API. Assert(断言):该模块用于编写程序的单元测试用例. Buffer(缓冲块) :处理二进制数据. C/C++ Addons(拓展):Addons插件就是动态连接 ...
- 读书笔记: nodejs API 参考
>> bufferBuffer对象是全局对象Buffer支持的编码方式:ascii, utf8, base64, binarynew Buffer(size)new Buffer(arra ...
- nodejs API(一)
不要注重版本 URL 官网所在位置:https://nodejs.org/dist/latest-v8.x/docs/api/url.html URL网址解析的好帮手: url有三个可调用的方法:ur ...
- nodejs API(二)
官网所在位置:https://nodejs.org/dist/latest-v6.x/docs/api/querystring.html querystring.escape(str) 转义 qu ...
- vs开发nodejs api文档生成神器-apidoc
直接生成文档的神器 apidoc 1 win+R 输入 cmd 回车 然后进入 nodejs 项目目录 例如 D:\NodeTest\newApp1 2 用npm安装 apidoc 直接输入 npm ...
- nodejs api 中文文档
文档首页 英文版文档 本作品采用知识共享署名-非商业性使用 3.0 未本地化版本许可协议进行许可. Node.js v0.10.18 手册 & 文档 索引 | 在单一页面中浏览 | JSON格 ...
- PM2 部署 nodejs API项目
PM2的主要特性: 内建负载均衡(使用Node cluster 集群模块) 后台运行 0秒停机重载,我理解大概意思是维护升级的时候不需要停机. 具有Ubuntu和CentOS 的启动脚本 停止不稳定的 ...
- nodejs API笔记
一.URL 涉及到的方法 1.parse():解析地址 2.format():生成地址 3.resolve(from,to):组合成地址 举例说明: url.parse('http://baidu.c ...
- java,netcore和nodejs api性能测试
一. 前言 作为有点经验的码农,现在退休在家带孩子.闲来无事,想对使用过的框架(如果写语言容易引战,php是世界上最好的语言)做一个性能测试. 二. 背景 由于毕业后刚开始接触的编程语言是C#, 从a ...
随机推荐
- ASP.NET MVC系列:添加视图
虽然在上一篇文章中我们知道通过控制器可以在浏览器输出HTML页面,但是这不是控制器主要干的事,因为页面上我为还要做很多好看的特效,页面展示的事情当然交给视图来做了:下面我们就来看看如何添加一个视图 添 ...
- 优秀ASP.NET程序员修炼之路
初级的程序员或经验不足的程序员往往只意识到自己的程序是写给计算机的,而不会在意程序其实也是写给人的,或在意得不够.不全面. 写给机器的程序,往往追求的是运行正确.执行效率能满足要求.但程序员的任务仅仅 ...
- C#编程总结(十二)断点续传
C#编程总结(十二)断点续传 我们经常使用下载工具,如bit精灵.迅雷.FlashGet,这些软件都支持断点续传. 断点续传即下载任务暂停后可以继续,而无需重新下载,即下载时需要通知服务器的起始位置. ...
- linq查询xml
1.加载xml字符串 XElement root = XElement.Parse(@"<?xml version='1.0' encoding='utf-8'?> <It ...
- MEF入门之不求甚解,但力求简单能讲明白(二)
在上一篇文章中,我们已经学到了很基本的MEF概念和使用方法. 但我们导出的是一个object类型的实例,只能用来tostring,没有引用部件类库,也不能用里面的成员方法. 本篇,我们逐渐往简单的文件 ...
- Snippet: Fetching results after calling stored procedures using MySQL Connector/Python
https://geert.vanderkelen.org/2014/results-after-procedure-call/ Problem Using MySQL Connector/Pytho ...
- Java中使用Jedis操作Redis
使用Java操作Redis需要jedis-2.1.0.jar,下载地址:http://files.cnblogs.com/liuling/jedis-2.1.0.jar.zip 如果需要使用Redis ...
- php中的常用数组函数(五)(数组中获取键名集合)
array_keys($arr, $search_value, $strict); --数组中获取键名的集合. //参数1 要检索的数组:参数2 要检索的键值 默认NULL: 参数3 是否严格比较(= ...
- rabbitmq inequivalent arg 'x-message-ttl' for queue 'QUEUE_NAME' in vhost '/'异常解决
中午调整了一台应用服务的mq ttl参数后,重启时出现如下异常: Caused by: com.rabbitmq.client.AlreadyClosedException: channel is a ...
- JQuery读取XML文件
<?xml version="1.0" encoding="utf-8" ?> <taxrates> <taxrate id=&q ...