对外开放的通用接口设计

     需求:以自己当前的系统作为一个平台,提供一下接口对外开放。其他接入我们对外开放的平台或系统则统称为第三方平台。

如果想要提供一套统一的接口,即可对接各种各样的第三方平台的话,就需要将对外的接口做成通用接口。

     由于各平台的差异性,平台A:酒店系统的,平台B:商城系统的,平台C:某物品零售系统的。 由此可见第三方的不同系统的订单表字段以及字段的意义都是千差万别的。

    那么,如何处理这些差别很大的不同订单,将他们提交过来的信息处理成通用接口呢?

    1. 首先,梳理一下他们的共同点,且是必须的内容。那么我们定义一个通用的订单表,可以有以下必填字段,比如:

     对外开放的通用接口设计_第1张图片

    2.  然后,针对不同第三方的差异性,分别提供不同的文档,以满足该第三方的订单内容。注意:这里只是提供不同的文档而已,事实上他们对接的都是同一个接口。比如:对于平台A:

           对外开放的通用接口设计_第2张图片

            但实际上,这些对应到通用表中,可能是分别对应 field1~~field11,即通用表中定义了11个字段来适配提交过来的信息。

     3.  如果是平台B对接该接口的时候,如果提交了20个字段过来,那么可能对应的字段是 field1~field7,   field13~field18, field22~field30.。 反正就是类似的这样处理。但是要注意,不同平台的对应字段,自己对内要提供一份文档说明。

     4. 只要做到以上几点,基本上通用接口的雏形就出来了,剩下的就是一些接口调用安全方面的校验。

         

        

你可能感兴趣的:(设计方案)