在日常电商软件开发的工作中,我们经常会遇到需要淘宝的订单信息的场景,比如:打单、发货,又比如做BI工具等。
这就需要用到淘宝订单信息获取接口。只有获取到淘宝订单信息,才能进行下一步工作。
目前这个接口是无法申请的, 封装接口,前往体验API:如c0b.cc/R4rbK2 。
获取淘宝订单信息,我们可以从淘宝开放平台上调用相关接口(相关接口当前可能不允许申请或者申请门槛极高,有需要相关接口或者对接口有疑问的可以博客园评论区,我会及时回复)。
如果调用接口的话,一般是调用 taobao.trades.sold.get 这个接口,这个接口是订单列表获取的,但是有些字段,这个接口是没有的,比如说买家留言字段的详细内容,这个接口就没有,就只能通过这个接口拿到tid后,再调用 taobao.trade.fullinfo.get 接口。
正常来说,调用接口的话,调用前者就可以满足大部分场景了,如果发现前者接口的字段不够你用的话,你再来看看后面那个接口,如果后面那个接口的字段还不够你用的话,建议思考一下你的场景是不是要修改修改了。
用上面的两个接口,要实现将订单同步到我们自己的数据库的话,是开启作业线程,定时轮询遍历接口去拿数据出来,一般我们是通过列表获取接口,但是一般来说如果是为了将列表同步下来,我们一般用的是 taobao.trades.sold.increment.get 接口来进行增量的订单获取。
但是,其实淘宝开放平台也有其他选择给我们,那就是数据库同步,我们可以在聚石塔购买数据库RDS,然后通过在开放平台相关配置,淘宝会将订单直接推送到我们购买的数据库RDS上,推送过来后我们的RDS上就会有一堆的数据,然后我们就可以直接写程序访问数据库的方式,来访问订单列表,拿到订单列表后就可以做我们想要做的功能了。
一般订单量多的话,还是比较建议数据库RDS推送的方式的,订单量少的话可以用前面说的调用接口的方式。
taobao.trades.sold.increment.get 接口的请求参数如下:
需要注意的是,增量接口的开始时间和结束时间,不能超过1天,但是按推荐还是小于30分钟内的,因为如果跨度长的话这个接口容易超时,一超时的话,就得重试。
调用接口需要注意频率,这个接口是收流量费的,在保证业务需求的前提下,尽量减少调用次数