×

深圳网站建设—APP开发—网站制作—小程序开发_博纳网络公司

0755 -
82538016
82560826
网站制作资讯

APP开发HTTP安全解决方案

文章编辑:网站建设 文章来源:APP开发 浏览量:

APP开发安全解决方案
  HTTP方法的使用APP和服务器的交互通常使用HTTP协议,常用的方法是GET和POST。GET方法的参数暴露在发送给服务器的URL里,且通常服务器端对URL的长度有限制;POST方法的参数在HTTP请求的BODY体里,比GET方法安全且数据长度没有限制。深圳APP开发公司认为从安全角度考虑,只要是带参数的请求,
都应该使用POST方法。APP向服务器发送的URL请求通常是如下格式。http://+域名+/+模块名+/+方法名例如,http://www.test.com/customer/login中包含的方法名为login,对应的JSON数据如下所示。
{
"version":1.0,"
params":{
"username":"aaa","
password":"123456"
}
}
params中包含此方法自身需要的参数。还有一种方案是把方法名也作为参数,传给服务器,对应的URL如下所示。
http://www.test.com/customer(此网址仅举例用,并非一个可以真正访问的网址。)对应的JSON数据如下所示。
{
"method":"login","
version":1.0,"
params":{
"username":"aaa","
password":"
123456"
}
}
APP开发怎样使用时间戳参数 
  如果黑客截获了APP向服务器发送的请求,就可以向服务器反复发送某个请求,对服务器实施攻击,导致服务器瘫痪。解决的方法是在APP向服务器发送的请求参数中增加时间戳参数,如服务器发现这个时间戳与服务器当前时间的间隔比较久,可判定此请求失效,不予处理,避免被恶意攻击。例如,APP从服务器获取商品列表时,发送如下数据。
{
"version":1.0,"
timeStamp":1425065977,
"authCode":"607a0aa16db850d06682d7711588ae46",
"params":
{
  "categoryId":1,
"offset":0,
"limit":10
}
}
timeStamp是APP发起此次请求的服务器当前时间,authCode是根据timeStamp的数值按MD5算法或其他算法生成的验证码。timeStamp和authCode是一一对应的关系,如果timeStamp的值变了,则authCode的值也随之变动。服务器收到APP发的请求后,首先比较timeStamp的数值与服务器收到该请求的时间,若两者相差比较大(如相隔了60秒),则可能是
黑客发起的非正常请求,服务器对此请求不予处理;如两者相差在允许范围内,则验证用timeStamp的数值按APP同样的算法生成的字符串内容是否和APP发送的authCode内容一致。使用此方法,需要APP和服务器的时间保持同步。APP在启动时,通过接口获取到服务器的时间并与APP的时间比较,如果不一致,APP在计算timeStamp的数值时,需要把两者的差值也计算在内。好了,APP开发公司本文关于“APP开发HTTP安全解决方案”的知识就分享到这里,谢谢关注,博纳网络编辑整理。
 
 

当前文章链接:/construction/appkaifa/2228.html
如果您觉得案例还不错请帮忙分享:

[声明]本网转载网络媒体稿件是为了传播更多的信息,此类稿件不代表本网观点,本网不承担此类稿件侵权行为的连带责任。故此,如果您发现本网站的内容侵犯了您的版权,请您的相关内容发至此邮箱【qin@198bona.com 】,我们在确认后,会立即删除,保证您的版权。