zoukankan      html  css  js  c++  java
  • Post和Get差异

    GET和POST差别例如以下:

    1,生成方式

    get方式有四种:1)直接在URL地址栏中输入URL。2)网页中的超链接。3)form中method为get。

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

    post仅仅知道有一种:form中method属性为post。

    2、数据传送方式

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

    post方式:表单数据存放在HTTP协议的消息体中以实体的方式传送到server。

    3、server获取数据方式

    GET方式:server採用request.QueryString来获取变量的值。

    POST方式:server採用request.Form来获取数据。

    4、传送的数据量

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

    POST方式:适合大规模的数据传送。

    由于是以实体的方式传送的。

    5、安全性

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

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

    6、在用户刷新时

    GET方式:不会有不论什么提示、

    POST方式:会弹出提示框,问用户是否又一次提交。



    详解:

    1.GET请求的数据会附在URL之后(就是把数据放置在HTTP协议头中)。以?切割URL和数据传输,參数之间以&相连,如:login.action?

    name=hyddd&password=idontknow&verify=%E4%BD%A0%E5%A5%BD。

    假设数据是英文字母/数字,原样发送。假设是空格,转换为+,假设是中文/其它字符,则直接把字符串用BASE64加密,得出如:%E4%BD%A0%E5%A5%BD,当中%XX中的XX为该符号以16进制表示的ASCII。

    POST把提交的数据则放置在是HTTP包的包体中。

    2.设置參数的方式

    Get:

     String urlName = url + "?

    " + params;

    URL  realUrl = new URL(urlName);

    URLConnection conn = realUrl.openConnection();//打开和URL之间的连接

    conn.connect();//建立实际的连接

    Post:

    URL  realUrl = new URL(url);

    URLConnection conn = realUrl.openConnection();//打开和URL之间的连接

    conn.setDoOutput(true);//发送post请求必须设置例如以下两行

    conn.setDoInput(true);

    PrintWriter out = new Printwriter(conn.getOutputStream());//获取URLConnection对象相应的输出流

    out.print(params);//发送请求參数

    版权声明:本文博客原创文章。博客,未经同意,不得转载。

  • 相关阅读:
    keras与卷积神经网络(CNN)实现识别mnist手写数字
    Pytorch自动求解梯度
    Kaggle竞赛入门(四):随机森林算法的Python实现
    Kaggle竞赛入门(三):用Python处理过拟合和欠拟合,得到最佳模型
    Kaggle竞赛入门(二):如何验证机器学习模型
    Kaggle竞赛入门(一):决策树算法的Python实现
    R语言入门:正态分布中dnorm(),pnorm(),qnorm(),和rnorm()函数的使用
    初识suse-Linux相关!
    关于visio 2007导入独立图库
    让windows 2003启动后直接进入桌面
  • 原文地址:https://www.cnblogs.com/mengfanrong/p/4741896.html
Copyright © 2011-2022 走看看