Http学习笔记

概念: Hyper Text Transfer Protocol 超文本传输协议

传输协议: 定义了客户端与服务器端通信时,发送数据的格式

特点:

  1. 基于TCP/IP的高级协议
  2. 默认端口号为80
  3. 基于请求/响应模型的:一次请求对应一次响应
  4. 无状态的:每次请求之间相互独立,不能交互数据

HTTP中请求方法中,常用的两种:

GET:

  1. 请求参数在请求行中,在url后
  2. 请求的url的长度是有限制的
  3. 不太安全

POST:

  1. 请求参数在请求体中
  2. 请求的url的长度是没有限制的
  3. 相对安全

Request:
1.request对象与response对象的原理

1.request和response对象是由服务器创建的。我们来使用他们
2.request用于获取消息,response用于响应消息

2.request功能
3. 获取请求行数据

(一)获取虚拟目录
String getContextPath( )

(二)获取请求URL
String getRequestURI( ) 短路径
String getRequestURL( ) 长路径

4.获取请求头信息

String name = request.getHeader(  " name " )

5.获取请求体方法

请求体:只有POST请求才有请求体,在请求体中封装了POST请求的请求参数

5.1获取流对象

bufferedReader  getReader()   :获取字符输入流,只能操作字符
ServletInputStream  getInputStream() :  获取字节输入流,可以操作所有数据类型 

常用方法:
1.获取请求参数的常用方法:不论是get还是post请求都能用以下方法来获取参数

* String  getParameter(String name) : 根据参数名返回参数值
* String[] getPatameterValues(String name) : 根据参数名返回参数值数组
* Enumeration<String> getParameterNames() : 获取所有请求的参数名称
* Map<String, String[]> getParameterMap() : 获取所有参数的Map集合

2.请求转发

*通过request对象获取请求转发对象: request.getRequestDispatcher("路径").forward(request,response);

特点:
1.浏览器地址不发生变化
2.只能转发当前服务器内的资源
3.转发是一次请求

3.共享数据
4.获取ServletContext

响应消息

实现重定向的方法:response.sendRedirect( " 路径名 " )

解决响应输出到浏览器乱码问题:

   //设置编码,在获取流之前设置
   response.setContentType("text/html;charset=utf-8")
   //获取流对象
   PrintWriter pw = response.getWriter()
   //输出数据
   pw.writer("你好!hello")
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
经导师精心指导并认可、获 98 分的毕业设计项目!【项目资源】:微信小程序。【项目说明】:聚焦计算机相关专业毕设及实战操练,可作课程设计与期末大作业,含全部源码,能直用于毕设,经严格调试,运行有保障!【项目服务】:有任何使用上的问题,欢迎随时与博主沟通,博主会及时解答。 经导师精心指导并认可、获 98 分的毕业设计项目!【项目资源】:微信小程序。【项目说明】:聚焦计算机相关专业毕设及实战操练,可作课程设计与期末大作业,含全部源码,能直用于毕设,经严格调试,运行有保障!【项目服务】:有任何使用上的问题,欢迎随时与博主沟通,博主会及时解答。 经导师精心指导并认可、获 98 分的毕业设计项目!【项目资源】:微信小程序。【项目说明】:聚焦计算机相关专业毕设及实战操练,可作课程设计与期末大作业,含全部源码,能直用于毕设,经严格调试,运行有保障!【项目服务】:有任何使用上的问题,欢迎随时与博主沟通,博主会及时解答。 经导师精心指导并认可、获 98 分的毕业设计项目!【项目资源】:微信小程序。【项目说明】:聚焦计算机相关专业毕设及实战操练,可作课程设计与期末大作业,含全部源码,能直用于毕设,经严格调试,运行有保障!【项目服务】:有任何使用上的问题,欢迎随时与博主沟通,博主会及时解答。
经导师精心指导并认可、获 98 分的毕业设计项目!【项目资源】:微信小程序。【项目说明】:聚焦计算机相关专业毕设及实战操练,可作课程设计与期末大作业,含全部源码,能直用于毕设,经严格调试,运行有保障!【项目服务】:有任何使用上的问题,欢迎随时与博主沟通,博主会及时解答。 经导师精心指导并认可、获 98 分的毕业设计项目!【项目资源】:微信小程序。【项目说明】:聚焦计算机相关专业毕设及实战操练,可作课程设计与期末大作业,含全部源码,能直用于毕设,经严格调试,运行有保障!【项目服务】:有任何使用上的问题,欢迎随时与博主沟通,博主会及时解答。 经导师精心指导并认可、获 98 分的毕业设计项目!【项目资源】:微信小程序。【项目说明】:聚焦计算机相关专业毕设及实战操练,可作课程设计与期末大作业,含全部源码,能直用于毕设,经严格调试,运行有保障!【项目服务】:有任何使用上的问题,欢迎随时与博主沟通,博主会及时解答。 经导师精心指导并认可、获 98 分的毕业设计项目!【项目资源】:微信小程序。【项目说明】:聚焦计算机相关专业毕设及实战操练,可作课程设计与期末大作业,含全部源码,能直用于毕设,经严格调试,运行有保障!【项目服务】:有任何使用上的问题,欢迎随时与博主沟通,博主会及时解答。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值