api对外开放接口
一: 对外开放接口如何保正:
- 请求鉴别用户身份? 请求参数被篡改?请求的唯一性(不可复制)
2 为了防止别人重复使用请求参数问题,我们需要保证请求的唯一性,就是对应请求只能使用一次,这样就算别人拿走了请求的完整链接也是无效的。
唯一性的实现:在如上的请求参数中,我们加入时间戳 :timestamp(yyyyMMddHHmmss),同样,时间戳作为请求参数之一,也加入sign算法中进行加密。
3 每一次请求登陆过程是不需要修改system_user中的**的,客户端和服务器端生成签名的方式要一致
eg: 签名 = **+参数1参数2时间戳 -----加密处理 ----得到最后的签名
最终客户端请求路径http://api.test.com/getproducts?uid=uid&sign=BCC7C71CF93F9CDBDB88671B701D8A35×tamp=201603261407&参数1=value1&参数2=value2