跳到主要内容
版本:海外SDK

游戏服务端接口对接测试工具使用指南

简介

本测试工具用于帮助游戏方验证服务端接口对接是否正确,特别是验签过程。工具提供了可视化的签名生成过程和测试功能,让对接过程更加直观和高效。

工具位置

测试工具文件:server-api-test-tool.html

可以直接在浏览器中打开使用,无需安装任何依赖。如需侧边栏入口,可点击此页或左侧目录的“接口对接测试工具”。

支持的接口

本工具支持以下四个接口的测试:

  1. 1.1 登录认证 - 游戏服务器向U8Server验证用户登录
  2. 1.2 支付回调 - U8Server回调游戏服务器的支付接口
  3. 1.4 奖励发放 - U8Server回调游戏服务器的奖励发放接口
  4. 1.7 广告播放奖励发放 - U8Server回调游戏服务器的广告奖励发放接口

使用方法

1. 打开工具

直接在浏览器中打开 server-api-test-tool.html 链接。

2. 选择要测试的接口

点击顶部的标签页切换到对应的接口测试页面。

3. 填写参数

根据接口要求填写相应的参数:

  • 必填项:标记有红色星号(*)的字段
  • 可选参数:已提供默认值,可根据需要修改

4. 生成签名

点击 "仅生成签名" 按钮,工具会:

  • 显示详细的签名生成过程
  • 展示每一步的签名字符串
  • 生成最终的sign值
  • 显示完整的请求数据

5. 测试请求

点击 "生成签名并发送测试请求" 按钮,工具会:

  • 生成签名
  • 发送测试请求到指定的服务器地址
  • 显示服务器响应结果
  • 验证响应是否符合预期

各接口详细说明

1.1 登录认证

用途:游戏服务器向U8Server验证用户登录

必填参数

  • userID:U8Server返回的userID
  • token:U8Server返回的token
  • appSecret:U8Server创建游戏时生成的AppSecret

验签规则

sign = md5("userID=" + userID + "token=" + token + appSecret)

测试功能

  • 生成sign签名
  • 可以选择不同的域名进行测试
  • 发送GET请求到U8Server验证接口

注意事项

  • 由于浏览器CORS限制,直接测试U8Server接口可能会失败
  • 建议使用生成的sign参数在游戏服务器代码中测试
  • 或使用Postman等工具进行测试

1.2 支付回调

用途:U8Server回调游戏服务器的支付接口

必填参数

  • 游戏服务器回调地址:游戏服务器接收回调的URL
  • AppSecret:U8Server为该游戏分配的AppSecret

验签规则

  1. 提取data中的所有字段(排除signType和sign)
  2. 按字母顺序排列字段
  3. 构建签名字符串:key1=value1&key2=value2&...&AppSecret
  4. MD5加密:sign = md5(signStr)

测试功能

  • 生成sign签名并显示详细过程
  • 发送POST请求到游戏服务器回调地址
  • 验证游戏服务器返回是否为"SUCCESS"

注意事项

  • 确保游戏服务器已实现该回调接口
  • 如果出现CORS错误,需要在游戏服务器配置CORS
  • 或使用Postman等工具进行测试

1.4 奖励发放

用途:U8Server回调游戏服务器的奖励发放接口

必填参数

  • 游戏服务器回调地址:游戏服务器接收回调的URL
  • AppSecret:U8Server为该游戏分配的统一密钥

验签规则

  1. 提取所有字段(排除sign)
  2. 按字母顺序排列字段
  3. 构建签名字符串:key1=value1&key2=value2&...&AppSecret
  4. 注意:空值也参与签名
  5. MD5加密:sign = md5(signStr)

测试功能

  • 生成sign签名并显示详细过程
  • 发送POST请求到游戏服务器回调地址
  • 验证游戏服务器返回是否为"success"(小写)

注意事项

  • extra2字段是JSON字符串,需要正确格式化
  • 空值也会参与签名计算
  • 预注册奖励发放可能不提供roleID和serverID

1.7 广告播放奖励发放

用途:U8Server回调游戏服务器的广告奖励发放接口

必填参数

  • 游戏服务器回调地址:游戏服务器接收回调的URL
  • AppSecret:U8Server为该游戏分配的统一密钥

验签规则

  1. 提取所有字段(排除sign)
  2. 按字母顺序排列字段
  3. 重要:直接拼接参数值(不是key=value格式)
  4. 构建签名字符串:value1value2value3...AppSecret
  5. MD5加密:sign = md5(signStr)

测试功能

  • 生成sign签名并显示详细过程
  • 发送POST请求到游戏服务器回调地址
  • 验证游戏服务器返回的error值(0:成功,1:已发放,2:错误)

注意事项

  • 此接口的签名方式与其他接口不同:直接拼接值,不是key=value格式
  • time字段如果留空,会自动生成当前时间戳
  • type字段:1表示发放奖励,2表示撤销奖励

常见问题

Q1: 为什么测试U8Server接口时出现CORS错误?

A: 这是浏览器的安全策略导致的。建议:

  • 使用生成的sign参数在游戏服务器代码中测试
  • 使用Postman、curl等工具进行测试
  • 或联系U8Server配置CORS

Q2: 签名验证失败怎么办?

A: 请检查以下几点:

  1. 参数顺序:确保按字母顺序排列
  2. 字段排除:确保排除了sign和signType字段(支付回调)
  3. 空值处理:奖励发放接口的空值也要参与签名
  4. 签名格式:广告奖励接口是直接拼接值,不是key=value格式
  5. MD5格式:确保是32位小写MD5
  6. 密钥:确认使用的是正确的AppSecret(本工具已统一为AppSecret)

Q3: 如何验证游戏服务器的验签逻辑是否正确?

A: 使用本工具:

  1. 填写测试参数
  2. 点击"仅生成签名"
  3. 查看签名字符串的构建过程
  4. 在游戏服务器代码中按照相同逻辑生成签名
  5. 对比两个签名是否一致

Q4: 支付回调返回什么算成功?

A: 游戏服务器应该返回字符串 "SUCCESS"(大写),其他任何返回都视为失败。

Q5: 奖励发放返回什么算成功?

A: 游戏服务器应该返回字符串 "success"(小写),其他任何返回都视为失败。

Q6: 广告奖励返回什么算成功?

A: 游戏服务器应该返回JSON格式:

{"error": 0, "msg": "success", "data": ""}
  • error: 0 表示成功
  • error: 1 表示已发放(也算成功)
  • error: 2 表示其他错误

验签规则对比表

接口排除字段排序方式拼接格式空值处理
1.1 登录认证固定格式userID=xxx&token=xxx&appSecret-
1.2 支付回调signType, sign字母顺序key=value&key=value&AppSecret参与
1.4 奖励发放sign字母顺序key=value&key=value&AppSecret参与
1.7 广告奖励sign字母顺序value1value2value3...AppSecret参与

技术支持

如果在使用过程中遇到问题,请联系技术支持人员,并提供:

  1. 使用的接口名称
  2. 填写的参数(隐藏敏感信息)
  3. 生成的签名字符串
  4. 错误信息或截图

更新日志

  • v1.0.0 (2025-12-11)
    • 初始版本
    • 支持4个接口的测试
    • 提供详细的签名生成过程展示