array( 'name' => 'test_image.jpg', 'type' => 'image/jpeg', 'tmp_name' => '/tmp/test_upload', 'error' => 0, 'size' => 1024 ) ); echo "✓ 模拟文件上传数据已设置\n"; echo " - 文件名: " . $_FILES['file']['name'] . "\n"; echo " - 文件类型: " . $_FILES['file']['type'] . "\n"; echo " - 文件大小: " . $_FILES['file']['size'] . " bytes\n"; // 5. 检查上传目录权限 echo "\n5. 检查上传目录...\n"; $uploadDirs = array( './Uploads/', './Public/Uploads/', './Runtime/Uploads/' ); foreach ($uploadDirs as $dir) { if (is_dir($dir)) { echo "✓ 目录存在: $dir\n"; if (is_writable($dir)) { echo " - 可写权限: 是\n"; } else { echo " - 可写权限: 否\n"; } } else { echo "? 目录不存在: $dir\n"; } } // 6. 检查路由配置 echo "\n6. 检查路由配置...\n"; $routeFiles = array( './Application/RiderApi/Conf/config.php', './Application/Common/Conf/config.php' ); foreach ($routeFiles as $file) { if (file_exists($file)) { echo "✓ 配置文件存在: $file\n"; } else { echo "? 配置文件不存在: $file\n"; } } // 7. 测试接口参数验证逻辑 echo "\n7. 测试接口参数验证...\n"; // 模拟骑手信息 $mockRiderInfo = array( 'id' => 1, 'name' => 'Test Rider', 'phone' => '13800138000', 'auth_status' => 2 ); echo "✓ 模拟骑手信息已设置\n"; echo " - 骑手ID: " . $mockRiderInfo['id'] . "\n"; echo " - 骑手姓名: " . $mockRiderInfo['name'] . "\n"; echo " - 认证状态: " . $mockRiderInfo['auth_status'] . "\n"; // 8. 检查上传参数配置 echo "\n8. 检查上传参数配置...\n"; $uploadConfig = array( 'add_time' => time(), 'from_type_id' => 29, // 骑手端文件上传类型ID 'localUrl' => 'RiderApi/User', 'user_type' => 5, // 骑手用户类型 'rider_id' => 1 ); echo "✓ 上传参数配置正确\n"; echo " - 来源类型ID: " . $uploadConfig['from_type_id'] . "\n"; echo " - 本地URL: " . $uploadConfig['localUrl'] . "\n"; echo " - 用户类型: " . $uploadConfig['user_type'] . "\n"; echo "\n=== 测试完成 ===\n"; echo "接口地址: /RiderApi/User/uploadFile\n"; echo "请求方式: POST\n"; echo "参数: 文件上传 (multipart/form-data)\n"; echo "返回格式: JSON\n\n"; echo "预期返回格式:\n"; echo "成功: {'code': 1, 'msg': '上传成功', 'data': {'file_id': 'xxx', 'file_path': 'xxx', 'file_url': 'xxx'}}\n"; echo "失败: {'code': 0, 'msg': '错误信息'}\n"; ?>