一、学习内容
1.http协议
协议: 就是事先的一种约定、规则、规范、标准。(租房合同、工作合同)
HTTP协议(HyperText Transfer Protocol ):超文本传输协议,客户端(==浏览器==)与Web服务器端之间的交互协议。当浏览器和服务器进行数据交换时,html文件、图片、CSS、JS等都是基于HTTP协议进行传输的
HTTP协议有两个版本: 1.0 和 1.1,目前使用的基本都是1.1
特点:
HTTP协议主要分为两大部分: 请求: 访问服务器的任何一个文件都是一次请求 响应: 服务器处理请求,将结果返回给浏览器 2.请求协议/请求报文 ==请求报文==分为3个部分: 请求行 请求头 请求体 请求行: 请求方式、请求URL地址、协议版本号 请求头: 主机域名和端口号,客户端(浏览器)的信息等 请求体: 发送给服务器的数据,get和post都会通过请求主体将数据发送给服务器 可以使用Chrome tools 或者 firebug 来查看请求和响应的信息(F12) 主要请求项: host: 主机名和端口号,80端口默认不显示 accept:浏览器可接受的程序/文件类型 accept-encoding: 浏览器可接受的压缩类型 accept-language: 浏览器可接受的语言类型 connection: keep-alive 持久化连接 3.响应协议/响应报文 1)响应报文也分为3部分: 响应行 响应头 响应体 响应行: 协议版本号、响应结果状态码 响应头: 主要是服务器端的信息 响应体: 就是从服务器返回给客户端的数据 2)主要响应项: content-type: 响应内容类型, content-type:text/html,服务器告诉浏览器,返回的这部分数据是文本类型,使用html方式来解析即可。 content-length: 响应内容的长度 ,content-length:336, 从服务器返回给浏览器的数据总长度为336字节 Connection: keep-alive 持久化链接(复用连接) Keep-Alive: timeout=5 默认B和S之间的链接时间是5秒,如果5秒钟还没有发起另一次请求,则断开链接 content-length: 5 响应体的内容长度为 5 字节,有利于浏览器判断内容是否已经结束。 4.常见状态码 常见的状态码如下: 200 ok ----- 请求成功 302 redirect|Found ----- 重定向 (页面跳转) 304 not modified ----- 未修改 403 forbidden ----- 禁止访问 (没有权限访问) 404 Not Found ----- 未找到页面 500 internal server error ----- 服务器内部错误 (可能是服务器本身有问题,或者==代码错的太离谱==) 5.req和res对象 1)req(request):请求对象 url: 保存了浏览器的url地址 method: 请求方式 headers: 请求头信息 2)res(response):响应对象 setHeader(): 设置响应头信息 res.setHeader('content-type', 'text/html;charset=utf-8') writeHead(): 设置响应头信息和状态码 write(): 设置响应体 end(): 将响应行、响应头、响应体一次性返回给浏览器,结束相应
6.npm和npm常用命令
1)什么是npm
npm (Node Packeage Manager): Node包管理器。是一个Node第三方模块(第三方包)管理工具,会随着node一起被安装。使用该工具能够简单方便的管理项目中所需要的第三方模块
2)配置项:
package name: 项目名称(包名)
version:版本号
description: 项目描述(包功能描述)
main:入口文件
test command:命令
git repositroy:git发布地址
keywords:项目关键词
author:作者
license:许可证号
最后使用 yes 来确定配置项 |