Spring Boot 接入淘宝猫超卡 TopAPI 经验记录
前阵子接了个需求,要通过淘宝开放平台的 TopAPI 给用户发超市卡。整套流程涉及获取虚拟用户 ID、购买卡、查询卡密和绑定,中间还有 RSA 解密和一堆异常处理。这里记一下用 Spring Boot + Lombok 搭起来的实现,代码能跑通,但有不少细节得踩坑才知道。
超市卡 API 概况
猫超卡相关的接口主要有这四个:
taobao.trade.fullinfo.get拿交易详情,带出虚拟用户 IDtmall.purchase.card.buy买卡tmall.purchase.card.fetch查卡密(密文,需解密)tmall.purchase.card.bind把卡绑定到指定用户
商家做积分兑换、活动赠卡基本就是这套流程。注意,虚拟 ID 不是淘宝昵称,文档里虽然叫 buyer_nick,但实际字段可能不同——我在注释里标了,具体以官方文档为准。
环境与依赖
Spring Boot 2.7,用 Lombok 省掉 getter/setter,淘宝那边的 SDK 是 top-api-sdk 2.0.0。Maven 配置如下:
<dependencies>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>
<dependency>
<groupId>org.projectlombok</groupId>
<artifactId>lombok</artifactId>
<optional>true</optional>
</dependency>
<dependency>
<groupId>com.taobao.top</groupId>
<>top-api-sdk
2.0.0
org.springframework.boot
spring-boot-starter-test
test

