Files
2026-06-24 14:00:50 +08:00

53 lines
1.3 KiB
Bash

#!/bin/bash
# 测试 Artalk API 连接
echo ""
echo "==================================="
echo " 测试 Artalk API"
echo "==================================="
echo ""
# 从 .env 读取配置
if [ -f ".env" ]; then
ARTALK_SERVER=$(grep "^ARTALK_SERVER=" .env | cut -d'=' -f2)
ARTALK_SITE=$(grep "^ARTALK_SITE=" .env | cut -d'=' -f2)
else
echo "错误: .env 文件不存在"
exit 1
fi
echo "Artalk 服务器: $ARTALK_SERVER"
echo "站点名称: $ARTALK_SITE"
echo ""
# URL 编码站点名称
ENCODED_SITE=$(echo -n "$ARTALK_SITE" | python3 -c "import sys, urllib.parse; print(urllib.parse.quote(sys.stdin.read().strip()))" 2>/dev/null || echo -n "$ARTALK_SITE" | jq -sRr @uri 2>/dev/null || echo "$ARTALK_SITE")
echo "编码后的站点名: $ENCODED_SITE"
echo ""
# 测试 API
URL="$ARTALK_SERVER/api/v2/comments?site_name=$ENCODED_SITE&limit=5&sort_by=created_at&sort_order=desc"
echo "请求 URL: $URL"
echo ""
echo "--- 发送请求 ---"
echo ""
# 发送请求并显示完整响应
curl -v "$URL" 2>&1
echo ""
echo ""
echo "--- 测试完成 ---"
echo ""
# 测试基本连通性
echo "测试服务器连通性..."
if curl -s -o /dev/null -w "%{http_code}" "$ARTALK_SERVER" | grep -q "200\|301\|302"; then
echo "✓ Artalk 服务器可访问"
else
echo "✗ Artalk 服务器可能无法访问"
fi
echo ""