#!/bin/bash # 客户资料导出接口测试脚本 # 测试接口:/api/Extend/LqKhxx/Actions/ExportOptimized BASE_URL="http://localhost:2011" LOGIN_URL="${BASE_URL}/api/oauth/Login" EXPORT_URL="${BASE_URL}/api/Extend/LqKhxx/Actions/ExportOptimized" echo "=========================================" echo "客户资料导出接口测试" echo "=========================================" echo "" # 1. 登录获取token echo "步骤1: 登录获取token..." LOGIN_RESPONSE=$(curl -s -X POST "${LOGIN_URL}" \ -H "Content-Type: application/x-www-form-urlencoded" \ -d "account=admin&password=e10adc3949ba59abbe56e057f20f883e") TOKEN=$(echo $LOGIN_RESPONSE | python3 -c "import sys, json; data = json.load(sys.stdin); print(data.get('data', {}).get('token', ''))" 2>/dev/null) if [ -z "$TOKEN" ]; then echo "❌ 登录失败,无法获取token" echo "响应: $LOGIN_RESPONSE" exit 1 fi echo "✓ 登录成功,token获取成功" echo "" # 2. 测试导出接口(带分页参数) echo "步骤2: 测试导出接口(查询前10条数据)..." EXPORT_RESPONSE=$(curl -s -X GET "${EXPORT_URL}?currentPage=1&pageSize=10" \ -H "Authorization: ${TOKEN}" \ -H "Content-Type: application/json") # 检查响应 echo "响应状态:" echo "$EXPORT_RESPONSE" | python3 -m json.tool 2>/dev/null || echo "$EXPORT_RESPONSE" # 检查是否有错误 ERROR_CODE=$(echo $EXPORT_RESPONSE | python3 -c "import sys, json; data = json.load(sys.stdin); print(data.get('code', ''))" 2>/dev/null) if [ "$ERROR_CODE" = "200" ]; then echo "" echo "✓ 接口调用成功" # 获取下载URL DOWNLOAD_URL=$(echo $EXPORT_RESPONSE | python3 -c "import sys, json; data = json.load(sys.stdin); print(data.get('data', {}).get('url', ''))" 2>/dev/null) FILE_NAME=$(echo $EXPORT_RESPONSE | python3 -c "import sys, json; data = json.load(sys.stdin); print(data.get('data', {}).get('name', ''))" 2>/dev/null) if [ ! -z "$DOWNLOAD_URL" ]; then echo "文件名: $FILE_NAME" echo "下载URL: ${BASE_URL}${DOWNLOAD_URL}" echo "" echo "✓ 导出文件生成成功" fi elif [ "$ERROR_CODE" = "500" ]; then ERROR_MSG=$(echo $EXPORT_RESPONSE | python3 -c "import sys, json; data = json.load(sys.stdin); print(data.get('msg', ''))" 2>/dev/null) echo "" echo "❌ 接口调用失败(服务器错误)" echo "错误信息: $ERROR_MSG" echo "" echo "提示: 如果错误信息包含'Method not found',说明服务需要重新编译和重启" else echo "" echo "❌ 接口调用失败" echo "错误代码: $ERROR_CODE" fi echo "" echo "=========================================" echo "测试完成" echo "========================================="