第三方接口开发流程「建议收藏」

第三方接口开发流程「建议收藏」1.确定需要哪些接口重点是要确定每个接口的具体功能。确保这些接口是必须的,功能相互间没有交叉。2.接口设计及细节分析a)发送参数名、参数含义、参数数据类型、长度、精度b)接收参数名、参数含义、参数数据类型、长度、精度接口的使用的类型变量尽量通用,特别是对使用此接口的用户一无所知情况下,对方可能是JAVA,也可能是VB6,也可能是C#,不要使用某种编程语言的…

大家好,又见面了,我是你们的朋友全栈君。

1.确定需要哪些接口 重点是要确定每个接口的具体功能。确保这些接口是必须的,功能相互间没有交叉。
2.接口设计及细节分析 a)发送参数名、参数含义、参数数据类型、长度、精度 b)接收参数名、参数含义、参数数据类型、长度、精度 接口的使用的类型变量尽量通用,特别是对使用此接口的用户一无所知情况下,对方可能是JAVA,也可能是VB6,也可能是C#,不要使用某种编程语言的特定类型,比较好的一种方式是,参数和返回值都使用string类型,这样基本上的编程语言都能支持。 c)发送信息时的数据格式:xml格式还是json格式 d)网络传输时的编码格式。
3.确定数据交互的安全性 交互传输的数据中是否有敏感数据,如果有,如何处理?如果要加密,采用何种加密方式?接口是公开的还是受限定访问的?如果是受限定访问的,如何确定信息的发送方或者获取方是合法的,而不是冒仿者? 例如电子商务网站一般都会调用支付宝的接口进行付款,在传送基本的金额、通知url、用户名等信息外,支付宝为验证调用的合法性还需要传送“安全码、加密方式”等字段进行校验,以防止用户将货款付到其他人或公司的支付宝账户中。 在调用招商银行的支付接口时招商银行会限定IP,并且会用自己的客户端将发送信息按照分配的U盾进行加密处理。
4.编码 1).不要程序各个地方直接使用其它的系统的接口,最好是写一个类来封装其它系统的接口,如果其它系统的接口很多,可以专门建一个项目或包来管理这些类,这样当接口发生变化时(如接口名,接口方式),可以集中修改找一个类中的函数,而程序的其它地方都可以不用改,将“变化”限定在最小的范围内,将封装的优点大大的发挥出来。切忌在程序的各个地方直接调用其它系统的接口 2)对于调用会产生数据交易的其它系统接口,一定要写Log,这对将来数据出错时,查找问题的根源很必要,特别是对方系统的接口没有写log时,一旦出现数据问题,往往会不知从何查起,是我们给的数据有问题,还是对方系统处理我们给的数据有问题?在最近的一个项目中,因为我们产生数据的逻辑很复杂,而对方接口收到我们产生的数据后,也会做一个很复杂数据交易动作,在系统上线初期,出现了很多莫名其秒的数据,而我们正是通过在调用对方接口时的写log数据,很快查出一些是我们生成的数据有问题,一些是对方处理数据有问题 3)对接口接收过来的数据,最好进行数据效验,因为你不能保证其它系统会传给你完全符合标准的数据。 对数据校验不通过的和执行失败的,最好能有清淅明了的提示返回给调用方
5.测试 包括接口内部测试、修改,和第三方的联调。
6.上线 第三方接口开发后正式上线,测试通过则上线成功,失败则回退,并从第4步开始新一轮的测试,直到系统上线成功。 第三方接口开发流程,是必须要让生产商所了解的,只有在掌握了第三方接口的正确开发流程,才能够让第三方接口在被开发出来之后,具有安全性和正规性,也能够让消费者在购物之后,能够信赖这一平台和接口,从而不会造成自己金钱的流失。

除非注明,文章均为(一品威客网 )原创,转载请保留链接: http://gonglue.epwk.com/169047.html

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/145960.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • Maven常用指令和配置说明

    Maven常用指令和配置说明本文总结日常工作中经常用到的Maven命令,作为总结,以便学习和回顾。

    2022年6月17日
    44
  • Mac突然连不上WiFi解决步骤「建议收藏」

    Mac突然连不上WiFi解决步骤「建议收藏」事件描述:上午用图书馆无线看电视过程中,莫名就网断了,开始以为是图书馆网问题,后来手机开热点也无法连接。去年刚买Mac时也出现过这种问题,后来换了主板,心慌还以为又要去修理了o(╯□╰)o 开始无用尝试部分: 1.打开设置-网络-位置,更改为自动 2.关机,立即同时按下command+option+R+P,听到三声后松手 解决步骤:移除网络配置和偏好文件 手动删除网络plist…

    2022年6月18日
    46
  • js获取现在时间_js中如何动态显示日期时间

    js获取现在时间_js中如何动态显示日期时间js可以通过Date对象获取当前日期和时间,使用Date()获取系统当前时间,在使用getFullYear()、getMonth()、getDate()、getHours()等方法获取特定格式的时间,在使用innerHTM方法显示。首先我们来了解一下js获取当前时间所需的一些方法:获取当前时间:vard=newDate();//获取系统当前时间获取特定格式的时间:1、获取当前年份getYear()方法:可以获取年份(2位或4位),其返回值是表示当前Date对象的年份字

    2025年11月29日
    6
  • Java设计模式(十五)之行为型模式:观察者模式

    Java设计模式(十五)之行为型模式:观察者模式

    2021年4月9日
    114
  • 【实战】javaweb学生信息管理系统[通俗易懂]

    javaweb学生信息管理系统总的来说整个项目通过Maven来管理jar包,实现了学生信息管理系统的登录,增删改查等基本操作,然后不喜写css样式,页面有点丑,但是代码中的逻辑基本正确。项目下载链接csdn下载链接github地址一、项目架构二、数据库的设计操作1.user表2.student表三、登录界面(动态生成验证码、提示账号or密码or验证码输入有误)四、登录的主界面五…

    2022年4月15日
    91
  • 加密原理详解:对称式加密 VS 非对称式加密[通俗易懂]

    加密原理详解:对称式加密 VS 非对称式加密[通俗易懂]一、前言在了解加密原理前,我们来看看这样一个故事。小红和小明是情侣,一天,小红给小明发短信说:“亲爱的,我银行卡上没有钱了,你给我转1万块吧。”有过上当受骗经历的人都知道这有可能是小偷偷了小红手提包,然后拿手机发的短信。不过我们小明学过加密原理,于是他回复说:“你直接拿我的银行卡刷吧,密码加上我们第一次约会的日期就是663156。”很明显,只有小明和小红知道他们第一次约会是什么时候,假设是2008年4月1号,那么小红就可以根据计算663156-200841=462315得到银行卡密码,就可以消费了。这

    2022年5月6日
    43

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号