完整的 PHP 客户端实现,包含签名计算、请求封装、错误处理等功能。
登录管理后台 → 应用管理 → 获取 AppCode 和 AppSecret
编辑 quickstart.php,填入您的应用信息
php quickstart.php
# 基本用法
php openapi-student-list-test.php <appCode> <appSecret>
# 示例
php openapi-student-list-test.php YY000001 a1b2c3d4e5f6789012345678901234ab
# 指定服务地址
php openapi-student-list-test.php YY000001 a1b2c3d4e5f6789012345678901234ab http://your-domain.com:8080
<?php
require_once 'OpenApiClient.php';
// 1. 创建客户端
$client = new OpenApiClient(
'http://localhost:8080',
'YY000001',
'your-app-secret',
false // 调试模式
);
// 2. 调用接口
$result = $client->get('/open/api/student/list', [
'pageNum' => 1,
'pageSize' => 10,
'studentName' => '张'
]);
// 3. 处理响应
if ($result['code'] === 200) {
echo "总记录数: {$result['total']}\n";
foreach ($result['rows'] as $student) {
echo "{$student['studentName']}\n";
}
}
?>
key1=value1&key2=value2&appSecret=xxxfunction calculateSign($params, $appSecret) {
ksort($params);
$signStr = '';
foreach ($params as $key => $value) {
if ($signStr) $signStr .= '&';
$signStr .= $key . '=' . $value;
}
$signStr .= '&appSecret=' . $appSecret;
return strtoupper(md5($signStr));
}
| 错误信息 | 原因 | 解决方法 |
|---|---|---|
| 签名验证失败 | appSecret 错误 | 检查应用密钥 |
| 请求已过期 | 时间戳超过5分钟 | 同步服务器时间 |
| 无权访问该接口 | 未授权 | 在管理后台配置授权 |
| 应用已停用 | 应用状态异常 | 启用应用 |
创建客户端时设置 debug = true,可以查看完整的请求详情和签名计算过程。
$client = new OpenApiClient($url, $code, $secret, true);