HTTP:请求和响应

145 阅读2分钟

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 响应

image.png

  • 常见状态码

5 用curl构造请求

image.png

6 用node.js 读取请求

在服务器代码中:

image.png

7 用node.js设置响应

可以写几行response.write(``) ,write后面括号的内容用反引号(!左边的键)包住;

image.png