Servlet - HTTP协议相关
1. 术语 :
请求 : 客户端根据用户所给的地址信息将数据发送给服务器的过程
响应 : 服务器将请求的处理结果发送给浏览器的过程
2. HTTP协议 :
超文本传输协议 ( Hyper Text Transfer Protocol )
规范浏览器和服务器的数据交互的格式
HTTP允许传输任意类型的数据对象, 正在传输的类型由Content-Type加以标记
HTTP1.1版本后支持可持续连接
3. HTTP的交互流程 :
1. 客户端和服务器端建立连接
2. 客户端发送请求数据到服务器端
3. 服务器端接收到请求后, 进行处理, 然后将处理结果响应给客户端
4. 关闭客户端和服务器端的连接 ( HTTP1.1后不会立即关闭 )
4. HTTP协议请求格式
请求头 : 请求方式, 请求地址和HTTP协议版本
请求行 : 消息报头, 一般用来说明客户端要使用的一些附加信息
空行 : 位于请求行和请求数据之间, 空行是必须的
请求数据 : 非必须
5. HTTP协议响应格式
响应行(状态行) : HTTP版本,状态码,状态消息
响应头 : 消息报头, 客户端使用的附加信息
空行 : 响应头和响应实体之间必须有空行
响应实体 : 正文, 服务器返回给浏览器的信息
6. get和post请求方式的区别
get请求方式 :
数据会以?的形式隔开拼接在请求头中, 不安全, 没有请求实体部分,
HTTP协议虽然没有规定请求数据的大小, 但是浏览器对URL的长度是有限制的,
所以get请求不能携带大量的数据
post请求方式 :
请求数据在请求实体中进行发送, 在URL中看不到具体的请求数据, 比较安全,
适合数据量大的数据发送
7. HTTP响应状态码五种类型
1xx : 信息, 服务器收到请求, 需要请求者继续执行操作
2xx : 成功, 操作被成功接收并处理
3xx : 重定向, 需要进一步的操作以完成请求
4xx : 客户端错误, 请求包含语法错误或无法完成请求
5xx : 服务器错误, 服务器在处理请求的过程中发生了错误
8. 常见状态码
200 ( OK ) : 客户端请求成功
400 ( Bad Request ) : 客户端请求有语法错误, 不能被服务器所理解
401 ( Unauthorized ) : 请求未经授权, 这个状态码必须和WWW-Authenticate报头域一起使用
403 ( Forbidden ) : 服务器收到请求, 但是拒绝提供服务
404 ( Not Found ) : 请求资源不存在
500 ( Internal Server Error ) : 服务器发生不可预期的错误
503 ( Server Unavailable ) : 服务器当前不能处理客户端的请求, 一段时间后可能恢复正常
Servlet - HTTP协议相关的更多相关文章
- 老李分享:SSL协议相关证书
老李分享:SSL协议相关证书 poptest是国内唯一一家培养测试开发工程师的培训机构,以学员能胜任自动化测试,性能测试,测试工具开发等工作为目标.如果对课程感兴趣,请大家咨询qq:9088214 ...
- Python——电子邮件、Internet协议相关模块
一.电子邮件相关模块 email:用于处理电子邮件 smtpd:SMTP服务器 base64:Base-16.32.64数据编码 mhlib:处理MH文件格式解析的类 mailcap:mailcap文 ...
- Windows网络编程笔记4 -- Winsock 协议相关知识
Win32平台上的Winsock编程,Winsock是一个与协议无关的接口.以下协议是我们需要了解的: 网络协议的特征包括: 1. 面向消息 2. 面向连接和无线接 3. 可靠性和次序性 4. ...
- http 协议相关问题
http 协议相关问题 来源 https://www.cnblogs.com/lingyejun/p/7148756.html 1.说一下什么是Http协议? 对器客户端和 服务器端之间数据传输的格式 ...
- TCP-IP-part7-IP协议相关技术(一)
仅凭IP是无法完成通信的,需要一些IP的辅助技术.这些技术的包格式可能不一样,但它们都是基于IP地址进行的,都是通过匹配路由表来进行的,只是功能不一样.例如DHCP分配IP地址,它只管通知这条信息,具 ...
- USB协议[转]_基本上涵盖了所有最基础的USB协议相关知识。
背景: 需要使用到USB协议,我一直尝试着去强记这个流程,现在看来,其实不用.看多了,把这个过程具象出来,就牢牢记住了. 正文: 正文转自:http://fangjian0518.blog.163.c ...
- maven管理的jsp应用如何添加servlet、jsp相关依赖(org.apache.jasper.JasperException: java.lang.ClassNotFoundException: org.apache.jsp.index_jsp)
背景: 老大让做权限控制,研究了一下shiro,下了个demo下来,死活跑不起来,报 org.apache.jasper.JasperException: java.lang.ClassNotFoun ...
- 【Servlet】1、Servlet监听器及相关接口
Servlet监听器用于监听一些重要事件的发生,监听器对象可以在事情发生前.发生后可以做一些必要的处理. 接口: 目前Servlet2.4和JSP2.0总共有8个监听器接口和6个Event类,其中Ht ...
- http协议相关
HTTP请求方法 HTTP消息头 HTTP请求头 HTTP响应头 HTTP cookie机制和实现原理 HTTP请求方法 超文本传输协议(HTTP, HyperText Transfer Protoc ...
随机推荐
- ASP.NET MVC SignalR 简单聊天推送笔记
介绍:(抄袭于网络) ASP.NET SignalR 是为 ASP.NET 开发人员提供的一个库,可以简化开发人员将实时 Web 功能添加到应用程序的过程.实时 Web 功能是指这样一种功能:当所连接 ...
- 视频专家之路【三】:Vs开发环境的搭建
本文是听了雷宵骅大神的课之后的总结,部分内容借用了其PPT的内容,如有侵权请告知删除. 雷宵骅大神的博客为:https://blog.csdn.net/leixiaohua1020 这里提及一点,原来 ...
- Android中App可分配内存的大小(转)
转自:http://blog.csdn.net/u011506413/article/details/50965435 现在真实测试结果: 1,为了搞清楚每个应用程序在Android系统中最多可分配多 ...
- node js实战:带数据库,加密的注册登录表单
demo 注册效果: 登陆效果: 数据库截图: 数据库操作 db.js //这个模块里面封装了所有对数据库的常用操作 var MongoClient = require('mongodb ...
- CF566E Restoring Map
题意:乱序给你树上的每一个节点与之相距<=2的节点集合(并不知道这具体是哪个节点). 还原整棵树. 标程: #include<bits/stdc++.h> #define P pai ...
- Delphi DBgrid 动态点击事件
错误的写法: DBGrid1CellClick(DBGrid1.Columns[ DBGrid1.DataSource.DataSet.RecNo ]); //执行点击事件 正确的写法: DBGrid ...
- Shiro学习(2)身份验证
身份验证,即在应用中谁能证明他就是他本人.一般提供如他们的身份ID一些标识信息来表明他就是他本人,如提供身份证,用户名/密码来证明. 在shiro中,用户需要提供principals (身份)和cre ...
- Android中如何做到自定义的广播只能有指定的app接收
今天没吊事,又去面试了,具体哪家公司就不说了,因为我在之前的blog中注明了那些家公司的名字,结果人家给我私信说我泄露他们的题目,好吧,我错了...其实当我们已经在工作的时候,我们可以在空闲的时间去面 ...
- 记录一次项目中dubbo-admin实战部署
环境: 1.centos7 2.jdk-7u76-linux-x64.tar.gz 2.tomcat:apache-tomcat-7.0.59.tar.gz 3.zookeeper-3.4.6.tar ...
- SP6779 GSS7 - Can you answer these queries VII
纯数据结构题,没有思维难度.直接用线段树求最大子段和的方法完成树上路径的合并.注意链上合并顺序要符合序列的前后顺序. #include <cstdio> #include <cstr ...