JavaWeb 之 Http
0x01:为什么会有Http?
在 HTTP 建立之初,主要目的就是为了将超文本标记语言(HTML)文档从Web服务器传送到客户端的浏览器
0x02:什么是Http?
http是一个简单的,请求-响应协议,是超文本传输协议,通常运行在TCP之上
https是http的安全版本
0x03:Http的发展
http1.0:客户端与服务端连接,只能获得一个web资源
http2.0:客户端与服务端连接,可以获得多个web资源
0x04:Http请求
客户端 --------Request----------- 服务端
请求头
Request URL:https://www.baidu.com/ //请求地址
Request Method:GET //get方法/post方法
Status Code:200 OK //状态码:200
Accept: //告诉浏览器,它所支持的数据类型
Accept-Encoding: //支持哪种编码格式(GBK,UTF-8,GB2312,ISO8859-1)
Accept-Language: //告诉浏览器,它的语言环境
Cache-Control: //缓存控制
Connection: //告诉浏览器,请求完成是断开还是保持连接
HOST: //主机
请求行
- 请求方式: GET,POST,(HEAD,DELETE,PUT,TRACT)
- GET:请求携带参数较少,有大小限制,会在浏览器URL地址栏显示数据内容
- POST:参数不限,大小不限,不显示数据内容
从请求方式看,没有过多限制的POST效率不如GET,但是安全性强于GET
0x05:Http响应
Bdpagetype: 2
Bdqid: 0xa06ecf7f00038ae9
Cache-Control: private
Connection: keep-alive
Content-Encoding: gzip
Content-Type: text/html;charset=utf-8
Date: Fri, 01 Jan 2021 04:48:46 GMT
Expires: Fri, 01 Jan 2021 04:48:46 GMT
Server: BWS/1.1
Set-Cookie: BDSVRTM=175; path=/
Set-Cookie: BD_HOME=1; path=/
Set-Cookie: H_PS_PSSID=33425_1426_33306_31660_33351_33313_33312_33311_33310_33309_26350_33308_33307_33268_33394_33370; path=/; domain=.baidu.com
Strict-Transport-Security: max-age=172800
Traceid: 1609476526037233921011560405437874670313
Transfer-Encoding: chunked
X-Ua-Compatible: IE=Edge,chrome=1
Cache-Control //缓存控制
Connection: keep-alive //连接
Content-Encoding:gzip //编码
Content-Type:text/html //类型
响应状态码
- 200 成功
- 302 重定向
- 402 web资源不存在
- 500 服务器代码错误
- 502 网关错误
JavaWeb 之 Http的更多相关文章
- 从啥也不会到可以胜任最基本的JavaWeb工作,推荐给新人的学习路线(二)
在上一节中,主要阐述了JavaScript方面的学习路线.先列举一下我朋友的经历,他去过培训机构,说是4个月后月薪过万,虽然他现在还未达到这个指标. 培训机构一般的套路是这样:先教JavaSE,什么都 ...
- JavaWeb——Servlet
一.基本概念 Servlet是运行在Web服务器上的小程序,通过http协议和客户端进行交互. 这里的客户端一般为浏览器,发送http请求(request)给服务器(如Tomcat).服务器接收到请求 ...
- JavaWeb——Listener
一.基本概念 JavaWeb里面的listener是通过观察者设计模式进行实现的.对于观察者模式,这里不做过多介绍,大概讲一下什么意思. 观察者模式又叫发布订阅模式或者监听器模式.在该模式中有两个角色 ...
- .JavaWeb文件上传和FileUpload组件使用
.JavaWeb文件上传 1.自定义上传 文件上传时的表单设计要符合文件提交的方式: 1.提交方式:post 2.表单中有文件上传的表单项:<input type="file" ...
- javaWeb应用打包
在Java中,使用"jar"命令来对将JavaWeb应用打包成一个War包,jar命令的用法如下:
- JavaWeb——tomcat安装及目录介绍
一.web web可以说,就是一套 请求->处理->响应 的流程.客户端使用浏览器(IE.FireFox等),通过网络(Network)连接到服务器上,使用HTTP协议发起请求(Reque ...
- 做JavaWeb开发不知Java集合类不如归家种地
Java作为面向对象语言对事物的体现都是以对象的形式,为了方便对多个对象的操作,就要对对象进行存储.但是使用数组存储对象方面具有一些弊端,而Java 集合就像一种容器,可以动态地把多个对象的引用放入容 ...
- JavaWeb基础学习体系与学习思路
对于JAVAWEB的学习,首先一定要明确的是学习整体框架和思路,要有一个把控.对于WEB,很多人认为是做网页,简单的把静态网页与JAVAWEB与网页设计一概而论. 拿起一本JS就开始无脑的学习,学了一 ...
- Eclipse下配置javaweb项目快速部署到tomcat
用惯了VS,再用Eclipse,完全有一种从自动挡到手动挡的感觉啊. 很多同学在Eclipse下开发web项目,每一次修改代码,看效果的时候都有右键项目->Run as -> Run on ...
- javaweb学习笔记之servlet01
一.Servlet概述 A servlet is a small Java program that runs within a Web server. Servlets receive and re ...
随机推荐
- python之路29 网络编程基础2之 两种架构 传输层常见协议 socket模块
软件开发架构 1.C/S架构(Client:客户端和Server:服务端) 服务器-客户机,即Client-Server(C/S)结构.C/S结构通常采取两层结构.服务器负责数据的管理,客户机负责完成 ...
- [深度学习]Keras利用VGG进行迁移学习模板
# -*- coding: UTF-8 -*- import keras from keras import Model from keras.applications import VGG16 fr ...
- 深入理解C++虚函数底层机制和RTTI运行时类型识别
当调用一个虚函数时,被执行的代码必须与调用函数对象的动态类型相一致:指向对象的指针或引用的类型是不重要的,编译器是如何高效地提供这种行为呢?大多数编译器是使用virtual table和virtual ...
- SpringCloud NetFlix学习
SpringCloud NetFlix 遇到记录不完全的可以看看这个人的博客 学相伴SpringCloud 微服务架构的4个核心问题? 服务很多,客户端该怎么访问? 负载均衡.反向代理,用户请求的永远 ...
- 玩转web3第二篇——Web3UI Kit
介绍 开发web2应用的时候,可以很方便找到很多优秀的UI库,比如antd,material ui,element ui等等,但web3应用对应的UI库却不多. 今天给大家介绍一款优秀的WEB3的UI ...
- windows环境下部署一个Jenkins工程
首先要安装配置好Jenkins环境变量,具体操作可参考其他文章 确保Jenkins可以正常运行之后开始进行项目的部署 首页点击新建,进行新建一个工程 进入项目添加界面,填入项目名称并选择构建一个自由风 ...
- CSS特效集锦(9款 , 总有一款是你喜欢的)
主要是: 穿越时空特效, 图片放大镜, 3D相册, 立方体相册, 昼夜更替特效, 飘雪, 七彩雨, 签名生成器, 水波纹动画等 代码部分 <section> <div class=& ...
- P21_事件传参与数据同步
事件绑定 在事件处理函数中为 data 中的数据赋值 通过调用 this.setData(dataObject) 方法,可以给页面 data 中的数据重新赋值,示例如下: 事件传参 小程序中的事件传参 ...
- .net core 前端传递参数有值 后端接收到的数据却是null
1.问题分析 在做接口测试时,偶然出现了前端输出有值,但是后端断点调试时却出现接收参数总是为null的情况 2.解决办法 前端打印log,看前端的每一个传值的数据类型,与后端请求参数类进行认真的一一比 ...
- 微信小程序-支付
微信小程序的支付只要用到官方的支付API : wx.requestPayment(Object object) 官方文档地址:https://developers.weixin.qq.com/mini ...