吉安企业做网站,linux做网站服务器,做一个15页的网站怎么做,网站用户账号ip查询文章目录 认识urlurlencode和urldecodeHTTP协议格式HTTP的方法HTTP的状态码HTTP常见Header 虽然应用层的协议是由人为规定的#xff0c;但是已经有大佬们定义了一些现成的#xff0c;又非常好用的应用层协议#xff0c;供我们直接参考使用. HTTP(超文本传输协议)就是其中之一… 文章目录 认识urlurlencode和urldecodeHTTP协议格式HTTP的方法HTTP的状态码HTTP常见Header 虽然应用层的协议是由人为规定的但是已经有大佬们定义了一些现成的又非常好用的应用层协议供我们直接参考使用. HTTP(超文本传输协议)就是其中之一。 认识url 我们经常所说的网址就是url http协议名称www.example.jp代表一个IP地址80代表端口号。这样就可以定位到一个主机的一个进程上了在应用层上进行DNS域名解析/dir/index代表的是你想访问的资源路径像上述 / ? : 等这样的字符, 已经被url当做特殊意义理解了. 因此这些字符不能随意出现
urlencode和urldecode
如果在搜索关键字当中出现了像 / ? : 这样的字符由于这些字符已经被URL当作特殊意义理解了因此URL在呈现时会对这些特殊字符进行转义。 在线编码工具 HTTP协议格式
请求格式
首行: [方法] [url] [版本]Header: 请求的属性, 冒号分割的键值对;每组属性之间使用\n分隔;遇到空行表示Header部分结束Body: 空行后面的内容都是Body. Body允许为空字符串. 如果Body存在, 则在Header中会有一个Content-Length属性来标识Body的长度; 响应格式
首行: [版本号] [状态码] [状态码描述]Header: 请求的属性, 冒号分割的键值对;每组属性之间使用\n分隔;遇到空行表示Header部分结束Body: 空行后面的内容都是Body. Body允许为空字符串. 如果Body存在, 则在Header中会有一个Content-Length属性来标识Body的长度; 如果服务器返回了一个html页面, 那么html页面内容就是在body中. HTTP的方法 从服务器上拿下来资源数据——GET GET方法分为两种分别是带参数和不带参数的 带参数的将数据上传给服务器(参数是url中后面的字符) 不带参数的从服务器取出数据 把客户端的数据上传到服务器进行处理——POST POST只进行将数据上传给服务器有参数但并不在url中他的参数在HTTP请求报头中的请求正文中 综上GET通过url传参将参数回显在url中 而POST是通过请求正文传参相对于GET来说比较私密 但实际上两者都是明传输都不安全
HTTP的状态码 最常见的状态码, 比如 200(OK), 404(Not Found), 403(Forbidden), 302(Redirect, 重定向),504(Bad Gateway) HTTP常见Header
Content-Type: 数据类型(text/html等)Content-Length: Body的长度Host: 客户端告知服务器, 所请求的资源是在哪个主机的哪个端口上;User-Agent: 声明用户的操作系统和浏览器版本信息;referer: 当前页面是从哪个页面跳转过来的;location: 搭配3xx状态码使用, 告诉客户端接下来要去哪里访问;Cookie: 用于在客户端存储少量信息. 通常用于实现会话(session)的功能 一个网站如果你经常访问或只访问过一次, 当你下一次访问时会自动登录你的账号以及相关信息 这就是Header中的Cookie所完成的。 当我们第一次访问一个网站时会注册我们的账号信息这个账号信息是被放在你当前计算机的文件中称为cookie文件。当你再次打开这个网站后你cookie文件中保存的用户相关的信息比如你曾经输入的账号密码就会被放在HTTP的header中的cookie字段中一起发送给服务器服务器直接让你使用。
首先我们知道HTTP协议是一种无状态协议HTTP的每次请求/响应之间是没有任何关系的如果没有cookie的存在那么每当我们要进行页面请求时都需要重新输入账号和密码进行认证 当我们第一次进入某个网页我们输入账号和密码如果服务器判定你是一个合法的用户为了后续进行某些网页请求时不用重新输入账号和密码此时服务器就会进行Set-Cookie的设置当认证通过并在服务端进行Set-Cookie设置后服务器在对浏览器进行HTTP响应时就会将这个Set-Cookie响应给浏览器。而浏览器收到响应后会自动提取出Set-Cookie的值将其保存在浏览器的cookie文件当中