接口通常分为两种:前端
1.程序内部的接口 web
2.系统对外的接口数据库
系统对外的接口:好比你要从别的网站或服务器上获取资源或信息,别人确定不会把数据库共享给你,他只能给你提供一个他们写好的方法来获取数据,你引用他提供的接口就能使用他写好的方法,从而达到数据共享的目的。json
程序内部的接口:方法与方法之间,模块与模块之间的交互,程序内部抛出的接口,好比bbs系统,有登陆模块、发帖模块等等,那你要发帖就必须先登陆,那么这两个模块就得有交互,它就会抛出一个接口,供内部系统进行调用。后端
接口的分类:api
1.webservice接口 浏览器
2.http api接口安全
webService接口是走soap协议经过http传输,请求报文和返回报文都是xml格式的,咱们在测试的时候都用经过工具才能进行调用,测试。服务器
http api接口是走http协议,经过路径来区分调用的方法,请求报文都是key-value形式的,返回报文通常都是json串,有get和post等方法,这也是最经常使用的两种请求方式。cookie
json是一种通用的数据类型,全部的语言都认识它。
get请求,post请求的区别:
一、GET使用URL或Cookie传参。而POST将数据放在BODY中。
二、GET的URL会有长度上的限制,则POST的数据则能够很是大。
三、POST比GET安全,由于数据在地址栏上不可见。
四、通常get请求用来获取数据,post请求用来发送数据。
其实上面这几点,只有最后一点说的是比较靠谱的,第一点post请求也能够把数据放到url里面,get请求其实也没长度限制,post请求看起来参数是隐式的,稍微安全那么一些些,可是那只是对于小白用户来讲的,就算post请求,你经过抓包也是能够抓到参数的。(惟一区别就是这一点,上面3点区别都是不许确的)
为何要进行接口测试:
1.越底层发现bug,它的修复成本是越低的。
2.前端随便变,接口测好了,后端不用变,先后端是两拨人开发的。
3.检查系统的安全性、稳定性,前端传参不可信,好比京东购物,前端价格不可能传入-1元,可是经过接口能够传入-1元。
http状态码:
一、200 2开头的都表示这个请求发送成功,最多见的就是200,就表明这个请求是ok的,服务器也返回了。
二、300 3开头的表明重定向,最多见的是302,把这个请求重定向到别的地方了。
三、400 400表明客户端发送的请求有语法错误,401表明访问的页面没有受权,403表示没有权限访问这个页面,404表明没有这个页面。
四、500 5开头的表明服务器有异常,500表明服务器内部异常,504表明服务器端超时,没返回结果。
webservice接口怎么测试:
它不须要你在拼报文了,会给一个webservice的地址,或者wsdl文件,直接在soapui导入,就能够看到这个webservice里面的全部接口,也有报文,直接填入参数调用,看返回结果就能够了。
天气预报wsdl地址:http://www.webservicex.net/globalweather.asmx?wsdl
cookie与session的区别:
一、cookie数据存放在客户的浏览器上,session数据放在服务器上。
二、cookie不是很安全,别人能够分析存放在本地的cookie并进行cookie欺骗
考虑到安全应当使用session。
三、session会在必定时间内保存在服务器上。当访问增多,会比较占用你服务器的性能
考虑到减轻服务器性能方面,应当使用cookie。
四、单个cookie保存的数据不能超过4K,不少浏览器都限制一个站点最多保存20个cookie。
五、因此我的建议:
将登录信息等重要信息存放为session其余信息若是须要保留,能够放在cookie中