# 土豆api自动精灵SDK
# 介绍
土豆api自动精灵sdk,支持所有的加密,所有的验签,支持所有的接口,一键接入,轻松调用
# 项目地址
https://gitee.com/chengdu-xuda-network/potatocloudzdjlsdk (opens new window)
# 准备工作
- 下载土豆API (opens new window)
- 注册土豆API账号
- 创建一个APP应用
- 下载自动精灵 (opens new window)
# 使用步骤
- 下载SDK (opens new window)可在脚本市场中搜索【土豆API_SDK】
- 导入SDK代码
- 配置TD对象
- 调用对应函数
# 注意事项
- SDK只为快速开发提供,具体使用需自行斟酌
- 签名密钥、请求密钥、加密密钥请勿外传
# TD对象配置示例
{
url: "https://api.potatocloud.cn", // 请求地址/域名,默认官方地址
askKey: "", // 请求密钥,从土豆API控制台获取
signKey: "", // 签名密钥,用于请求签名验证
signType: 3, // 验签类型:0=不验签,1=V1签名,2=V2签名,3=V3签名
responseEncryptType: 1, // 请求加密类型:0=不加密,1=Base64,2=AES,3=DES,4=AES无填充,5=RC4
requestEncryptType: 1, // 响应加密类型:0=不加密,1=Base64,2=AES,3=DES,4=AES无填充,5=RC4
encryptSecretKey: "" // 加密密钥,用于数据加密解密
};
1
2
3
4
5
6
7
8
9
2
3
4
5
6
7
8
9
# 验签类型说明
| 值 | 类型 | 说明 | 安全性 |
|---|---|---|---|
| 0 | int | 不进行签名验证 | 低 |
| 1 | int | V1签名,仅使用时间戳 | 中 |
| 2 | int | V2签名,使用时间戳和请求数据 | 高 |
| 3 | int | V3签名,使用时间戳、请求数据和随机字符串 | 极高 |
# 加密类型说明(请求 / 响应通用)
| 值 | 类型 | 加密方式 | 详细说明 |
|---|---|---|---|
| 0 | int | 不加密 | 数据传输过程中不进行任何加密处理,明文传输 |
| 1 | int | Base64 | 采用 Base64 编码方式处理数据(非加密,仅编码) |
| 2 | int | AES/ECB/PKCS5Padding | 对称加密:AES 算法,ECB 模式,PKCS5Padding 填充方式 |
| 3 | int | DES/ECB/PKCS7 | 对称加密:DES 算法,ECB 模式,PKCS7 填充方式 |
| 4 | int | AES/ECB/NOPadding | 对称加密:AES 算法,ECB 模式,无填充(需确保密钥为 16 位) |
| 5 | int | RC4 | 流加密:RC4 对称加密算法,使用指定密钥进行数据加密 |
# API 接口列表
1. 发送注册邮箱验证码
potatoapi('/api/sendEmailMessage', "POST", {
"userNumber": "10086", // 用户名
"email": "3328842962@qq.com" // 邮箱
})
1
2
3
4
2
3
4
2. 用户注册
potatoapi('/api/register', "POST", {
"userNumber": "potatoapi", // 账号
"email": "3328842962@qq.com", // 邮箱
"passWord": "potato123456", // 密码
"code": "666666" // 验证码
})
1
2
3
4
5
6
2
3
4
5
6
3. 用户注册V2
potatoapi('/api/registerV2', "POST", {
"userNumber": "potatoapi", // 账号
"passWord": "potato123456" // 密码
})
1
2
3
4
2
3
4
4. 用户登陆
potatoapi('/api/login', "POST", {
"userNumber": "potatoapi", // 账号
"passWord": "potato123456" // 密码
})
1
2
3
4
2
3
4
5. 查询用户详情
potatoapi('/api/findUserInfo', "GET")
1
6. 修改用户信息
potatoapi('/api/updateUserInfo', "POST", {
"qqNumber": "3328842962", // 某位帅哥的QQ
"userName": "发霉的土豆", // 一个帅气的名字
"birth": "2026-01-01" // 刚出生不久
})
1
2
3
4
5
2
3
4
5
7. 修改用户密码
potatoapi('/api/updatePassWord', "POST", {
"oldPassWord": "potato123456", // 旧密码
"newPassWord": "potato1" // 新密码
})
1
2
3
4
2
3
4
8. 获取当前应用信息
potatoapi('/api/getAppInfo', "GET")
1
9. 获取公告
potatoapi('/api/getNotice', "GET")
1
10. 获取app是否需要更新
potatoapi('/api/updateApp', "POST", {
"version": "1.0.0" // 版本号
})
1
2
3
2
3
11. 发送邮件
potatoapi('/api/sendEmailByUser', "POST", {
"email": "3328842962@qq.com", // 邮箱
"title": "测试邮件", // 标题
"content": "这是一封测试邮件" // 内容
})
1
2
3
4
5
2
3
4
5
12. 验证卡密V2
potatoapi('/api/verifyCardV2', "POST", {
"mac": "MAC", // 设备号
"cardStr": "6666666" // 卡密
})
1
2
3
4
2
3
4
13. 验证卡密V1
potatoapi('/api/verifyCardV1', "POST", {
"cardStr": "6666666" // 卡密
})
1
2
3
2
3
14. 获取登陆图片验证码
potatoapi('/api/getCodeImg', "GET")
1
15. 用户签到
potatoapi('/api/signInUser', "GET")
1
16. 解绑卡密接口
potatoapi('/api/unbindCard', "POST", {
"mac": "MAC", // 原设备号
"cardStr": "6666666" // 卡密
})
1
2
3
4
2
3
4
17. 获取签到排行榜
potatoapi('/api/getSignInList', "POST", {
"p": 1, // 分页页数
"s": 10 // 分页条数(最大1000)
})
1
2
3
4
2
3
4
18. 启动APP
potatoapi('/api/startApp', "GET")
1
19. 历史版本更新记录
potatoapi('/api/getAppUpdateLog', "POST", {
"p": 1, // 分页页数
"s": 10 // 分页条数(最大1000)
})
1
2
3
4
2
3
4
20. 用户反馈
potatoapi('/api/feedBack', "POST", {
"content": "感谢反馈,下次一定", // 反馈内容
"contact": "3328842962", // 联系方式
})
1
2
3
4
2
3
4
21. 获取单个文本
potatoapi('/api/getDoc', "POST", {
"key": "potato" // 文本KEY
})
1
2
3
2
3
22. 用户留言板留言
potatoapi('/api/messageBoard', "POST", {
"id": "potato", // 留言ID
"content": "神秘留言" // 留言内容
})
1
2
3
4
2
3
4
23. 获取留言板列表
potatoapi('/api/getMessageBoardList', "POST", {
"p": 1, // 分页页数
"s": 10 // 分页条数(最大1000)
})
1
2
3
4
2
3
4
24. 获取商品列表
potatoapi('/api/getGoodsList', "POST", {
"name": "商品001" // 商品名称
})
1
2
3
2
3
25. 获取商品标签列表
potatoapi('/api/getLabelList', "GET")
1
26. 用户生成卡密
potatoapi('/api/createCardMy', "POST", {
"type": 1, // 卡密类型 0天卡,1周卡,2月卡,3季卡,4年卡,5永久卡
"total": 10 // 卡密数量
})
1
2
3
4
2
3
4
27. 查询用户生成卡密列表
potatoapi('/api/getCardMyList', "POST", {
"p": 1, // 分页页数
"s": 10 // 分页条数(最大1000)
})
1
2
3
4
2
3
4
28. 修改用户余额接口
potatoapi('/api/updateUserBalance', "POST", {
"amount": 100, // 金额
"type": 1 // 修改类型 0增加,1减少
})
1
2
3
4
2
3
4
29. 查询用户余额流水
potatoapi('/api/getUserBalanceList', "POST", {
"p": 1, // 分页页数
"s": 10 // 分页条数(最大1000)
})
1
2
3
4
2
3
4
30. 用户查询会员列表
potatoapi('/api/getVipList', "POST", {
"p": 1, // 分页页数
"s": 10 // 分页条数(最大1000)
})
1
2
3
4
2
3
4
31. 用户余额购买会员
potatoapi('/api/userByVipWithBalance', "POST", {
"vipId": "793803358835597312" // 会员id 【需通过用户查询会员列表】获取
})
1
2
3
2
3
32. 公众号通知
potatoapi('/api/sendWeChatMessage', "POST", {
"openId": "openUserId", // 【potato cloud】公众号内获取
"head": "土豆api提醒标题",
"content": "土豆api提醒内容"
})
1
2
3
4
5
2
3
4
5
33. 公众号批量通知
potatoapi('/api/sendBatchWeChatMessage', "POST", {
"openId": "openUserId", // 【potato cloud】公众号内获取
"head": "土豆api提醒标题",
"content": "土豆api提醒内容"
})
1
2
3
4
5
2
3
4
5
34. 执行云函数
potatoapi('/api/execFunction', "POST", {
"name": "test11", // 函数名称
"params": {
"name": "土豆api" // 传递的参数
}
})
1
2
3
4
5
6
2
3
4
5
6
35. 卡密心跳
potatoapi('/api/heartbeat', "POST", {
"carMyToken": "token" // 验证卡密V2登录后返回的carMyToken
})
1
2
3
2
3
# 数据库接口
1. 查询一条数据库数据
potatoapi('/api/selectOne/表名称', "POST", {
"id": "1"
})
1
2
3
2
3
2. 查询数据库列表
potatoapi('/api/selectList/表名称', "POST", {
"where": [
{
"reg": "gte",
"column": "id",
"value": "1"
},
{
"reg": "lte",
"column": "id",
"value": "3"
}
],
"pc": {
"p": 1,
"s": 10
}
})
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
3. 新增一条数据
potatoapi('/api/addOne/表名称', "POST", {
"id": 4,
"name": 111
})
1
2
3
4
2
3
4
4. 批量新增数据
potatoapi('/api/addList/表名称', "POST", {
"list": [
{
"id": 9,
"name": "1212"
},
{
"id": 10,
"name": "1212"
}
]
})
1
2
3
4
5
6
7
8
9
10
11
12
2
3
4
5
6
7
8
9
10
11
12
5. 修改一条数据
potatoapi('/api/updateOne/表名称', "POST", {
"column": {
"name": 111,
"age": 1212
},
"where": {
"id": 1,
"age": 1212
}
})
1
2
3
4
5
6
7
8
9
10
2
3
4
5
6
7
8
9
10
6. 删除一条数据
potatoapi('/api/deleteOne/表名称', "POST", {
"where": {
"id": 9,
"name": "11"
}
})
1
2
3
4
5
6
2
3
4
5
6
# 常见问题
# 如何获取请求密钥和签名密钥?
登录土豆API控制台,创建应用后即可获取相关密钥。
# 为什么请求总是返回签名验证失败?
请检查以下几点:
- 签名密钥是否正确
- 验签类型是否匹配
- 时间戳是否在有效范围内
- 请求数据是否被篡改
# 如何处理加密响应?
SDK会自动处理加密响应,只需确保配置了正确的加密密钥即可。
# 技术支持
- 官方文档:https://doc.potatocloud.cn
- 官方Q群:696558472 (opens new window) , 612439857 (opens new window)
- 邮箱:313097897@qq.com
← Auto.js AndroidLua →