GET & POST
GET
      1.GET 的本质是"得"
      2.从服务器拿数据,效率更高
  3.从数学的角度来讲,GET 的结果是"幂等"的
  4.GET请求能够被缓存
  5.在 HTTP 协议定义中,没有对GET请求的数据大小限制,不过因为浏览器不同,一般限制在 2~8K 之间
  6.所有的参数包装在URL中,并且服务器的访问日志会记录,不要传递敏感信息
  参数格式? 在资源路径末尾添加?表示追加参数 变量名=变量值 每一个变量及值按照"变量名=变量值"方式设定,不能包含空格或者中文 等特殊符号
                &  多个参数使用&连接
POST
  1.POST 的本质是"给"
  2.向服务器发送数据,也可以获得服务器处理之后的结果,效率不如GET
  3.POST请求不能被缓存,post再次提交数据,页面会有提示:是否发送数据.....
  POST提交数据比较大,大小靠服务器的设定值限制,PHP通常限定 2M
  URL中,只有资源路径,但不包含参数,服务器日志不会记录参数,相对更安全
  参数被包装成二进制的数据体,格式与GET基本一致,只是不包含?
  所有设计用户隐私的数据(密码,银行卡号)一定记住使用POST方式传递
 -------------------------------------------------------------------------------------

HTTP通信过程 - 请求

nHTTP协议规定:1个完整的由客户端发给服务器的HTTP请求中包含以下内容
 请求行:包含了请求方法、请求资源路径、HTTP协议版本

GET /MJServer/resources/images/1.jpg HTTP/1.1

 请求头:包含了对客户端的环境描述、客户端请求的主机地址等信息

Host: 192.168.1.105:8080   // 客户端想访问的服务器主机地址

User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.9) Firefox/30.0

// 客户端的类型,客户端的软件环境

Accept: text/html, */*   // 客户端所能接收的数据类型

Accept-Language: zh-cn   // 客户端的语言环境

Accept-Encoding: gzip   // 客户端支持的数据压缩格式

p请求体:客户端发给服务器的具体数据,比如文件数据

===========

HTTP通信过程 - 响应

n客户端向服务器发送请求,服务器应当做出响应,即返回数据给客户端
nHTTP协议规定:1个完整的HTTP响应中包含以下内容
p状态行:包含了HTTP协议版本、状态码、状态英文名称

HTTP/1.1 200 OK

p响应头:包含了对服务器的描述、对返回数据的描述

Server: Apache-Coyote/1.1   // 服务器的类型

Content-Type: image/jpeg   // 返回数据的类型

Content-Length: 56811   // 返回数据的长度

Date: Mon, 23 Jun 2014 12:54:52 GMT  // 响应的时间

p实体内容:服务器返回给客户端的具体数据,比如文件数据

------------------------------------------------------------------------------------------

200(状态码) OK
2xx成功

4xx 客户端的错误
5xx 服务器端的错误

------------------------------------------------------------------------------------------

get,post 区别,HTTP通信的更多相关文章

  1. 17-7-20-electron中主进程和渲染进程区别与通信

    老规矩,先吐槽,再记录. 今天被上司教育了将近一个小时.因为之前自动更新的模块,我认为已经完成了,但是还有一些细节没有完善好,就一直一直的被教育~ 事情全部做完,提交以后关闭issue! electr ...

  2. 《PHP开发APP接口》笔记

    PHP开发APP接口 [TOC] 课程地址 imooc PHP开发APP接口 学习要点 APP接口简介 封装通信接口方法 核心技术 APP接口实例 服务器端 -> 数据库|缓存 -> 调用 ...

  3. Laxcus大数据管理系统2.0(8)- 第六章 网络通信

    第六章 网络通信 Laxcus大数据管理系统网络建立在TCP/IP网络之上,从2.0版本开始,同时支持IPv4和IPv6两种网络地址.网络通信是Laxcus体系里最基础和重要的一环,为了能够利用有限的 ...

  4. IP地址和域

    1. 0. 0. 0到 126.255.255.255为A类 主要分配给具有大量主机而局域网络数量较少的大型网络 128.0.0.0到191.255.255.255为B类 一般用于国际性大公司和政府机 ...

  5. SCI投稿过程总结、投稿状态解析、拒稿后对策及接受后期相关问答

    SCI投稿过程总结.投稿状态解析.拒稿后对策及接受后期相关问答   http://muchong.com/t-9174366-1 SCI投稿过程总结.投稿状态解析.拒稿后处理对策及接受后期相关问答综合 ...

  6. http 相关文章

    1. 百度百科 2.http | MDN 3.协议讲解 4.经典题 5.http与https的区别 6. http服务器返回状态总结 7.网络七层协议 开放式系统互联参考模型(OSI)的7层从上到下分 ...

  7. cocos2d-x开发:服务端基础库封装

    元旦前面几天都在忙着面试,随后的几天也就一直在做服务端基础库开发方面的工作.对于服务端开发,是很久之前的事情了.那时候我还在大学读书,一直都是在倒腾服务端开发方面的东西,毕业后参加公司工作就是一直从事 ...

  8. UML复习1-2章

    第一章 1.请对SDLC的六个阶段排序 1> 可行性分析 2> 设计 3> 测试 4> 维护 5> 需求分析与说明 6> 编码 A. 1 5 2 6 3 4 B. ...

  9. Html5 WebSocket详细介绍

    什么是WebSocket?看过html5的同学都知道,WebSocket protocol 是HTML5一种新的协议.它是实现了浏览器与服务器全双工通信(full-duplex).HTML5定义了We ...

  10. MPI简谈

    MPI简谈 MPI是分布式内存系统,区别于OpenMP和Pthreads的共享内存系统.MPI是一种基于消息传递的并行编程技术,是如今最为广泛的并行程序开发方法. MPI前世今生 MPI(Messag ...

随机推荐

  1. sqlplus链接数据库报ORA-09925: Unable to create audit trail file

    [localhost.localdomain]:[/oracle11/app/oracle11/product/11.2.0/dbhome_1/dbs]$ sqlplus / as sysdba SQ ...

  2. 项目管理10000 hours – 瞎扯谈系列

    本系列会 zz 网上现有的文章,套句经典的话就是死磕自己,娱乐大众. 项目能否按时完成是项目管理的重要目标,将会面临的问题有团队的稳定性,冲突,会议以及压力. 团队中适度的人员流动是可以理解的,如何减 ...

  3. Linux下配置OpenCV1.0环境

    自己一直嚷嚷着打算学学图像识别,识别个简单的,车牌号,验证码之类的,之前查过资料,OpenCV可以实现.昨天花了一个下午终于配置好环境了,今天写下总结. OpenCV这一名称包含了Open和Compu ...

  4. (译)【Unity教程】使用Unity开发Windows Phone上的横版跑酷游戏

    译者注: 目前移动设备的跨平台游戏开发引擎基本都是采用Cocos2d-x或者Unity.一般而言2d用cocos2d-x 3d用unity,但是对于Windows Phone开发者, cocos2d- ...

  5. pythonchallenge之C++学习篇-02

    第二关任然是一个字符处理的关卡 查看网页源码发现有一大串字符需要处理,这么多的字符如果放在源代码里就很不好了 所以要用到C++对文件的操作,用到的头文件是fstream 这里参照了这个博文 对文件处理 ...

  6. Ubuntu 14.04下翻译软件的安装与比较

    转载:sixipiaoyang.blog.163.com/blog/static/6232358820144146386437/

  7. Linux学习笔记(1)Linux虚拟机安装过程中的知识点及常用管理工具

    1. VMware的相关知识 (1)建议的VMware的配置: CPU 主频1GHz以上 内存 1GB以上 硬盘 分区空闲空间8GB以上 (2)VMware创建快照 快照的作用是保存虚拟机的现有状态, ...

  8. UML 之 四种关系

    学习过UML的人都知道,UML之中有九种图和四种关系,今天,我们先来介绍一下这四种关系: 对于我们这些初学者来说,UML之中无非是  关联.依赖.泛化和实现,但是其中,关联和依赖又如何区分?泛化又如何 ...

  9. 【spring set注入 注入集合】 使用set注入的方式注入List集合和Map集合/将一个bean注入另一个Bean

    Dao层代码: package com.it.dao; public interface SayHell { public void sayHello(); } Dao的Impl实现层: packag ...

  10. json 转化

    1. 把java 对象列表转换为json对象数组,并转为字符串 复制代码代码如下:     JSONArray array = JSONArray.fromObject(userlist);    S ...