• 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对象声明之前,亲测。


    作者:danielJinyu

    本文版权归作者和博客园共有,欢迎转载,但未经作者同意请保留此段声明,请在文章页面明显位置给出原文连接
    Github:https://github.com/DanielJinyu

  • 相关阅读:
    在cmd下执行py脚本报Traceback (most recent call last)报错解决
    git上传文件方法
    js获取元素方法和jquery语法操作元素方法
    获取config.ini文件配置的方法
    利用random随机函数实现抽奖方法
    selenium封装 运行脚本+生成测试报告+发送email
    基于KB的QA系统学习记录
    python学习记录
    manjaro + kde 使用过程中问题记录及解决方法
    linux学习记录
  • 原文地址:https://www.cnblogs.com/danielJinyu/p/11364723.html
Copyright © 2020-2023  润新知