1 如何发请求
1、用Chrome地址栏;
2、用curl命令:crul -v baidu.com ;
3、发请求的工具叫做:用户代理(user agent),如上面的chrome 和 curl;
2 如何做响应
1、这些代码是服务器代码,一般放在服务器上;
2、path 是不带查询参数的路径 /x ;
3、query 是查询参数的对象形式 {a:'1'};
4、queryString 是查询参数的字符串形式 ?a=1 ;
5、pathWithQuery 是带查询参数的路径,一般不用;
6、request 是请求对象;
7;response 是响应对象;
3 代码逻辑
3.1 语法
- `` 反单引号里面可以直接用回车键;
- ''单引号里面回车只能用 \n 表示;
3.2 逻辑
- 每次收到请求都会把中间的代码执行一遍;
- 用 if else 判断路径,并返回响应;
- 如果是已知路径,一律返回200;
- 如果是未知路径,一律返回404;
- Centent-Type 表示内容的 类型/语法,上面的代码表示类型为text,语法是CSS或Javascript;
- response.write(``)可以填写返回的内容;
- respond.end()表示响应可以发给用户了;
4 http体系知识
- 基础概念:请求、响应;
- 如何调试:用Node.js,可以用log/debugger;
- 查资料:查Node.js文档;
- 标准制定者:HTTP规格文档:RFC2612;
4.1 请求
-
post请求
curl -v -X POST --data 'xxx' http:localhost:端口号/ ,向服务器上该端口号的根目录发送内容为xxx的post请求,命令行中 * 后面的那行内容就是请求体;
-
get请求 curl -v --data 'xxx' http:localhost:端口号/ :向服务器上该端口号的根目录发送内容为xxx的get请求;
4.2 响应
- 常见状态码
5 用curl构造请求
6 用node.js 读取请求
在服务器代码中:
7 用node.js设置响应
可以写几行response.write(``) ,write后面括号的内容用反引号(!左边的键)包住;