这一难题,假如延伸起来,能够写出十多万字的Web开发设计科谱文。GET和POST是HTTP请求的二种最普遍最常见的基础方式 ,在人们之前上幼儿园初级中学的那时候,书本上把互联网技术形容为信息高速公路。即然是高速路,就要有 交通法规对吗。要不然你开大拖拉机的、和开卡车的都会这条道上飚车,非常容易拥堵是否。因而信息高速公路的交通法规中,总有这条法规了,开大拖拉机的和开货车各自应当走哪些行车道。开大拖拉机的运输的货品相对比较少,也非常容易看出去运输的是啥货品,因而提议走get行车道,尽管路窄一点儿但贵在过副本的那时候无需下车时查验。卡车运输的货品较为多还较为隐蔽工程,因而走post行车道。POST<a href="http://www.itniuboke.com/article/22339.html" target="_blank" title="GET">GET</a>
制订这一交通出行规章的到底是谁?就是说人们浏览所有网页前边都是再加的哪个http(比如http://www.qq.com),它的中文全名是动态网页传送协议书。
而HTTP的最底层也是根据TCP/IP(等于互联网技术全球的交通法),中文全名是传输控制协议或是英特网互连协议书。因此GET和POST的最底层都是TCP/IP,全是TCP连接。GET和POST能做的事儿都是相同的,全是道路上的运载工具。你非得给GET再加request body,给POST随身携带url主要参数,技术性上略微掩藏下都是能够。但难题是,不一样的电脑浏览器和网络服务器都对GET要求了推送和接纳限制,通常就是说几K到一百多K的字节数,能传输的统计数据信息内容十分不足,只合适某些简易的信息的传递。
人们看来2个实际的事例:
http://api.tianapi.com/txapi/poetries/?key=XXX&num=3
它分成3个一部分,深蓝色一部分是URI(留意URI不一定URL)、鲜红色一部分是主要参数、翠绿色一部分是参数值。如果你浏览这一详细地址时,就相当于告知了网络服务器,我的“身份证号码”是XXX,我需要你回到3条统计数据。如果你推送浏览请求时,电脑浏览器会把http header和data(也就是说主要参数和参数值)一同推送出来,网络服务器没有响应http 200 情况码和回到请求內容。
图2是1个post请求,它的主要参数是在request body(请求体)中的,以键值对的方式传送主要参数。post与get1个很关键的差别是,post请求时电脑浏览器先推送header,网络服务器没有响应100 continue,电脑浏览器再推送data(也就是说主要参数和参数值),网络服务器没有响应 http 200 情况码和回到请求內容。
JavaScript
{
"key": "XXX",
"num": "3"
}
因此针对像唐诗300首那样的插口,统计数据传送比较简单,用get方法传递数据是比较合适的。但针对像图象垃圾分类回收插口,在其中img主要参数,必须传送经base64编号后的统计数据,你就十分变大。一張照片1M尺寸的照片历经base64编号后,他的具体尺寸都是>1M,远高于get方法能传送的统计数据尺寸,应当就务必用post的方法传递数据。
天行统计数据的插口绝大部分只适用get方法请求,在接口文档的请求方法和请求主要参数中常有标明表明,get的主要参数部位urlParam,post的主要参数部位body,针对只适用post方法请求的某些插口,会在文本文档中附加用鲜红色文字提醒。大伙儿在启用插口时,必须要留意查询。如果你启用插口时,回到码提醒缺乏240=>缺乏key主要参数,或是280=>缺乏必需的主要参数,都表明你当今请求方法错误。
网友评论