您的位置 首页 php

PHP必备技能之接口详解(2)

上一篇发了关于接口的问题,有些朋友想问问具体有关于接口开发时候的细节,那这里的话我就详细地说一说关于开发方面的细节。

开发中接到来自于前端的接口开发需求之后,前端方面会为我们提供一个需求数据的格式,一般情况下后端在写接口的时候都应该注意需要使用json2.0的格式返回给前端,也就是你最终返回出去的内容要有code错误码,descript错误描述,这是错误时候的返回,正确时候的返回应返回code为0以及一个符合前端数据要求的data数组,当然这个时候我们又会需要一个新的函数了,也就是json_encode这个函数,把你要返回给前端的整个数组放进来,应该是一个result数组,包含data、code、descript三个部分的哦,解码的时候也很简单,json_decode,接过来的数据放进去,想获得数组形式的话第二个参数要声明true。

以上是返回需要注意的地方,接下来介绍一下PHPer在写接口的时候验证参数的问题,验证参数这里可以说有着不小的学问,不管是PHPer还是其余的后端开发人员,在写接口时都要注意sql注入以及跨网站攻击,至于其余传没传参数的简单验证,就不多口述了,防sql注入可以将用户传入的参数进行一遍简单的过滤,可以使用序列化参数serialize和unserialize函数过滤掉参数中的模拟传值,一般情况下PHP的框架方面都会对这些做出调整,这些将会在之后介绍PHP各类框架的时候和大家描述。

然后就是这位童鞋提到的接口频繁请求验证,跨网站攻击的最主要攻击手段就是通过不断的请求你的接口来导致你的网站瘫痪至不能工作,这个时候对于频繁请求的限制就很关键了,其一我们可以通过限制ip的方式来对同一ip的请求进行限制,插播一条获取ip的函数,$_SERVER[‘REMOTE_ADDR’],另外获取客户端ip的函数$_SERVER[‘HTTP_CLIENT_IP’]。

当然也会有许多网站攻击通过不断变换自己的ip来请求,这个时候就需要对每次登录时候的用户给与一定的权限,每次访问接口的时候都需要携带者auth权限验证,因此不登录的用户是无法频繁请求的,如果登录了的用户发起频繁请求时,我们可以根据自身需求将其进行一定时间段内的封号处理。

文章来源:智云一二三科技

文章标题:PHP必备技能之接口详解(2)

文章地址:https://www.zhihuclub.com/77436.shtml

关于作者: 智云科技

热门文章

网站地图