首页 > 网站 > WEB开发 > 正文

Http协议 GET/POST请求方式

2024-04-27 15:06:51
字体:
来源:转载
供稿:网友
1.1Http协议  -超文本传输协议  -浏览器和服务器之间的一种通讯协议  -由W3c制定,本质上是数据传输格式制定好了。浏览器和服务器必须按照这种格式进行接收  1.2Http协议包括两部分  -请求协议:从Browser发送到Server时采用的数据格式  -响应协议:从Server发送到Browser采用的数据传输格式  1.3请求协议:  -请求行  -消息报头  -空白行  -请求体    请求行包括:请求方式、URL、协议版本号  空白行:专门用来分离消息报头和请求体  1.4响应协议:  -状态行  -响应报头  -空白行  -响应体    状态行:协议版本号、状态码、状态描述信息  空白行:分离响应报头和响应体  2.GET和POST  -何时使用两者?    只有当使用form,并且将form标签的method属性设置为method=“post”    才是POST请求,其余情况都是GET方式      -区别    GET请求在请求行上提交数据,格式:url?name=value&name=value。。。    这种提交方式会显示在浏览器地址栏上        POST请求在请求体中提交数据,相对安全。提交格式:name=value&name=value。。        POST请求提交的数据没有长度的限制,而GET请求有。        GET请求只能提交字符串数据,POST请求可以提交任何类型,包括视频,所以文件上传必须使用POST请求        GET请求最终的结果,会被浏览器缓存收纳,POST请求不会被缓存              -如何选择?    有敏感信息,必须使用POST    传送数据非常多,或传送数据不是普通字符串,必须使用POST    请求是为了修改服务器数据,用POST        GET请求多数情况下,是从服务器读取数据,这个读取的资源在短时间之内是不会发生变化的,所以浏览器会将GET请求的结果缓存起来    POST请求是为了修改服务器端的资源,而每一次修改结果都是不同的,没有必要被缓存          -浏览器将资源缓存后,缓存的资源是和某个特定的路径绑定在一起,只要浏览器再发送这个相同的路径,这个时候会去缓存获取资源,不再访问服务器。以这种方式降低服务器的压力  提高用户的体验,但是有时候,我们不希望缓存,想每次都访问服务器,可以在请求路径后添加时间戳:  http://ip:port/oa/system/logout?timestemp=12312312312  JS获取毫秒:new Date.getTime()      -编写一个Servlet类应当继承javax.servlet.http.HttpServlet,get请求请重写doGet方法,post请求要重写doPost方法  -doPost和doGet方法可等同看做main方法      模板设计模式(template)应用于什么项目?    -Servlet规范中:HttpServlet    -HttpServlet是一个典型模板设计模式    -HttpServlet是一个模板类    -其中service(HttpServletRequest,HttpServletResponse)方法是典型的模板方法    -该方法中定义了核心算法骨架,doGet,doPost。。具体实现步骤延迟到子类中完成              模板方法设计模式特点:        doXXX        doYYY      属于行为型设计模式  模板设计模式作用:      核心算法得到保护      核心算法可复用      不改变算法的前提下,可以重新定义算法步骤的具体实现             -          
发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表