一、安全

    由于接口是基于HTTP的,也就是完全开放的,设计的接口是否安全,会不会被恶意调用或变为攻击入口,是接口首先要解决的问题。那么直入主题,我是这么设计的。
    1、防止数据串改。(通过为接口增加以下3个参数项,验证数据的完整性)
         1)_key : 这个参数不带入接口,作为调用者和服务端内部商定好的秘钥保存,不得外泄。用于计算签名token值时使用。
         2)random_str:随机字符串,保证每次调用接口时要唯一性。
         3)token:接口调用签名值。
        token参数值的算法是使用接口参数值以字符串形式,按一个固定顺序连接起来,拼接上_key值,再进行MD5加密后所得。当服务端响应时,也按照这个算法来计算token值,然后进行对比,若一致则认为调用者的参数没有变串改。原理是,攻击者不知道_key的值,所以一旦伪造参数,token的值必然失效。
    2、防止重复提交。
        以上的random_str参数能有效的防止相同token值的请求出现,所以在每次请求响应时,持久化保存token值,然后进行排重查询即可。
    
来自为知笔记(Wiz)

转载于:https://www.cnblogs.com/caryfang/p/4571950.html

关于应用的外部接口设计心得相关推荐

  1. FPGA设计心得(4)Aurora IP core 的定制详情记录

    文章目录 写在前面 IP核定制页面预览 IP核定制详解 lane width Line Rate GT REFCLK (MHz) INIT clk (MHz) DRP clk (MHz) Datafl ...

  2. 创新课程管理系统数据库设计心得

    因为创新课程管理系统这一个项目,是一个从无到有,没有标准可以去参考的一个项目. 这个项目专门针对该课程进行设计,所以需求的功能点很多,因此数据库有多次设计,更改再推翻重新设计再更改. 因为用户有多个类 ...

  3. c语言编程课程心得,c语言编程课程设计心得.docx

    C语言编程课程设计心得 C语言编程课程设计心得 河南城建学院 <C语言程序设计>课程设计报告 适用专业工程管理专业课程名称C语言程序设计指导教师赵军民.魏新红.张芳芳 设计人:051409 ...

  4. 对c语言课程的心得体会,C语言课程设计心得体会

    C语言课程设计心得体会 回想这三周C语言课程设计的过程,真是痛并快乐着. 从领到书的那一刻,我就很郁闷?<C语言程序设计>到底事学什么的,到底有什么用.刚开始上课时?还在迷茫这门课程是用来 ...

  5. c语言程序设计课程设计心得体会,C语言程序课程设计心得体会

    在科技高度发展的今天,计算机在人们之中的作用越来越突出,学习它,有助于我们更好的了解计算机,与计算机进行交流,因此,c语言的学习对我们尤其重要. 在这个星期里,我们专业的学生在专业老师的带领下进行了c ...

  6. php网页设计设计心得体会,网页设计心得体会范文

    范文参考网最近发表了一篇名为<网页设计心得体会范文>的范文,好的范文应该跟大家分享,重新编辑了一下发到范文参考网. 一.网站规划 本工作室主要用来做个人网站,主题是介绍自我,让更多的朋友认 ...

  7. 计算机vb实验感想,vb课程设计心得体会范文(精选3篇)

    vb课程设计心得体会范文(精选3篇) 当我们受到启发,对学习和工作生活有了新的看法时,就十分有必须要写一篇心得体会,这样可以不断更新自己的想法.那么你知道心得体会如何写吗?下面是小编为大家收集的vb课 ...

  8. 2016计算机课程设计,2016年ps课程设计心得体会范文

    课程设计的过程中涉及到很多方面的课程要素,最主要的课程要素包括课程目标.课程内容.学生的学习活动以及课程评价等.下面是小编整理的ps课程设计心得体会,欢迎借鉴! [1]ps课程设计心得体会 设计目的 ...

  9. 化工原理计算机辅助设计,化工原理课程设计心得体会

    化工原理课程设计心得体会 相信每一个学生经过了化工原理的课程设计之后都会有许多的感悟心得.下面是小编整理收集的化工原理课程设计心得体会范本,欢迎阅读参考! 篇一:化工原理课程设计心得 本次化工原理课程 ...

  10. 机械原理c语言程序,机械原理课程设计心得体会范文

    课程设计是培训学生运用本专业所学的理论知识和专业知识来分析解决 实际问题的重要教学环节,是对三年所学知识的复习和巩固.下面是小编整理的机械原理课程设计心得体会,欢迎大家参考! [1]机械原理课程设计心 ...

最新文章

  1. 请求拦截_实战SpringCloud通用请求字段拦截处理
  2. 《响应式Web设计:HTML5和CSS3实践指南》——2.9节基于位置伪类的交替行样式
  3. 微软职位内部推荐-Software Engineer II
  4. jquery 手型 鼠标穿过时_JS实现的鼠标跟随代码(卡通手型点击效果)
  5. Java中怎样将Json字符串转换成实体类
  6. VuePress 手摸手教你搭建一个类Vue文档风格的技术文档/博客
  7. Docker操作容器2
  8. 碘类滴眼液相关资料(国内+国外)
  9. 当阳一中2021高考成绩查询,宜昌2021高考最高分多少分,宜昌历年高考状元资料
  10. js app缓存自动刷新_如何通过清除缓存来刷新App Store中的内容
  11. Java String 常量池理解
  12. 情人节,请带走我给您的祝福
  13. C语言基础课第三次作业
  14. 微信公众号之测试号申请
  15. 手机虚拟摄像头_用手机当摄像头开直播 无他相机推荐
  16. 依存分析:中文依存句法分析简介
  17. 在后台管理系统中如何设计账户管理?
  18. Linux进程池、线程池调研
  19. ui设计现状与意义_UI设计存在的意义
  20. php extraxt,php中关于extract方法的使用和建议

热门文章

  1. oracle错误代码及解决办法整合
  2. JQuery操作SharePoint Web Services之添加列表数据
  3. 终端花屏后的恢复办法
  4. 别再用 Visio 了!试试这个比它快 10 倍的画图工具不香吗?
  5. 看图说话,FastJson 并没有那么流行!
  6. 阿里这样的高并发系统是如何做限流的?
  7. 手把手教你从0开始建中台
  8. twrp两种方式刷入的mm管理器_Google Pixel C 刷入Magisk
  9. 码了几年代码的程序员,有一定的开发经验,应该如何提升自己?
  10. 剑指offer 数字在排序数组中出现的次数