Http的请求方式详细介绍Get和Post

get方式:

  表单数据存放在URL地址后面。所有get方式提交时HTTP中没有消息体。

  1、get请求实现方式: 

    1)直接在URL地址栏中输入URL

    2)网页中的超链接

    3)form中method为get

    4)form中method为空时,默认是get提交

 

post方式

  表单数据存放在HTTP协议的消息体中以实体的方式传送到服务器。

 

传送的数据量

  GET方式:数据量长度有限制,一般不超过2kb。因为是参数传递,且在地址栏中,故数据量有限制。

  POST方式:适合大规模的数据传送。因为是以实体的方式传送的。

安全性

  GET方式:安全性差。因为是直接将数据显示在地址栏中,浏览器有缓冲,可记录用户信息。所以安全性低。  

  POST方式:安全性高。因为post方式提交数据时是采用的HTTP post机制,是将表单中的字段与值放置在HTTP HEADER内一起传送到ACTION所指的URL中,用户是看不见的。

 

服务端如何获取:

  request提供的方法: 

    String getParameter(String paramName)

      paraName写错会返回null

      表单不填会返回空字符串

    String[] getParameterValues(String paramName)

      当需要获取参数名相同的多个参数值时使用该方法,多用于获取提交的表单中复选框的值

      参数名不存在时返回null

 

如何处理中文参数?

  表单提交时,浏览器会对中文参数值进行编码。服务器端默认使用ISO-8859-1来解码。注:浏览器会使用表单所在页面打开时使用的字符集来编码

    如果表单提交方式是get

      在servers配置文件的<connector>标签内添加URIEncoding=“utf-8”

    如果表单提交方式是post

      request.setCharacterEncoding("utf-8"); 注:要加到所有的request.getParameter()前面

Servlet在浏览器输出中文

   为什么会乱码?

    out在输出时默认使用iso-8859-1编码

  如何解决?

    response.setContentType("text/html;charset=utf-8");       此句必须写在PrintWriter对象声明之前,亲测。

 

转载于:https://www.cnblogs.com/danielJinyu/p/11364723.html

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值