京东云-自营-连接器

使用易源平台的统一HTTP API,转发调用京东自营API全部开放API。您不再需要学习京东接口的签名算法、SDK用法,只要会使用易源接口即可。

连接器简介

1. 京东自营API市场是什么

京东云API市场官网地址是: https://www.jdcloud.com/cn/  。

 

京东自营API是官方开发运维的数据接口,可靠的一站式数据及API采购服务,为服务商提供安全、便捷的数据及API变现通道。开发者可通过这些接口使用各类型的数据服务,返回结果支持JSON和XML格式。

服务对所有用户开放。使用京东服务之前,需购买相应的数据,申请key后进行调用。

2. 常规使用流程

    我们在使用京东官方提供的WEB服务时,常规流程如下图所示:

 

调用京东服务时,需要每次把认证key一起发送到服务方。

3. 面临的问题

  • 密钥字段管理

    虽然只是简单地在URL后面放上密钥,但每个接口的密钥字段名、值都是不一样的。如果需要调用多个接口,那开发者就需要在程序中保存、维护这些参数。

  • 权限管理

    在很多情况下,一个账号的密钥可以调用  A、B、C、D多个接口,如果开发者想精细管理,比如某个小组只能调用A,某个小组只能调用BC,这样的情况只能自己编码进行权限管理。

  • IP黑白名单

    哪些IP可以使用您的密钥调用接口,哪些IP不能调用?这个看似简单的功能,很多API服务商却没有提供。

  • 流量、并发控制

    假设一个密钥在多个开发组中共享,每个小组每天能使用多少次调用,并发又能到多少? 因为API服务商通常对密钥有个总流控,您也不希望某个小组代码有问题而把其他小组的业务全阻塞了。

  • 日志记录

    一个密钥在什么时候,什么IP调用了接口,出入参数分别是什么?对不起,目前绝大部份API服务商没有对此记录。当您对调用量有疑问而希望服务商和您对账时,由于日志的缺失,这将是一笔糊涂账。

  • 负载均衡

    比如您同时在用百度和京东的【IP地址查询】接口,由于两个服务的调用额度、并发限制可能不同,您可以在易源设置这两个节点的负载权重从而分流。

  • 映射输入输出字段

    比如您同时在用百度和京东的【IP地址查询】接口,它们的输入和输出字段是不一样的。您可以通过易源对这两个节点的输入和输出做字段映射、代码级转换,从而把它们的输入输出完全统一。

  • 容灾切换

    项目中同时在用ABC三个接口,A挂了就走B,B再挂了就走C。需要定期检测节点的恢复情况。

 

4.解决方案

对于上一小节提到的问题,解决如下:

  • 密钥字段管理。

  • 权限管理

     通过连接器创建接入点,设置私有用户调用权限控制可使用哪些后端数据。

 

 

  • IP黑白名单

 

  

 

  • 流量、并发控制

 

 

 

  • 日志记录

 

 

  • 负载均衡

 

  • 映射输入输出字段

 

 

如果单纯的字段映射不能应对复杂情况,我们还可以使用【嵌入代码】方式直接修改输入、输出内容。

 

  • 容灾切换

      某个节点熔断后,易源会根据权重或嵌入的代码,将请求数据转至正常的后端节点。

 

 

5. 性能问题

    如果在同一个局域网下进行压力测试,直连时程序做充分优化,易源中转比直连方式的多消耗时间<1ms。网站或APP的响应时间在100ms-1000ms之间是可以接受的,也就是易源增加的时间是整体流程的0.01至0.001的比率,几乎可以忽略不计。这点开销,就像开车从北京到西安有1000公里,中间因为修路多走了1公里,总共由1000到1001公里,多走这1公里对全局可以忽略不计。

 

 

6. 安全问题

  • 易源平台和您签定合作协议,易源保证关键信息加密存储,保证数据安全不泄露,保证无用户授权绝对不连接数据源。
  • 易源公布对外IP,您可以设置IP白名单。

对于京东连接器,易源的IP是:

  • 121.41.60.109
  • 120.26.59.160
  • 120.26.61.225
  • 129.211.129.137

 

 

 

连接器功能(使用场景)

在以下场景时,使用易源的京东连接器是个很好的选择:

  1. 您对易源平台的操作、接口调用比较熟悉;
  2. 您对京东接口的调用有需求,但不想再学习一遍京东的鉴权、SDK包等手册;
  3. 您对IP白名单、可调权限、日志、监控、后端负载等有更多需求,而这些是京东平台不提供的; 
  4. 由于财务要求,您必须到京东购买接口,并且也是京东开具发票。但为了调用的统一性,您不介意使用易源中转调用京东接口;