explore_api_218.py 1.8 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677
  1. #!/usr/bin/env python3
  2. # -*- coding: utf-8 -*-
  3. """
  4. 探索 192.168.3.218:18183 服务器的 API 结构
  5. """
  6. import requests
  7. import json
  8. BASE_URL = "http://192.168.3.218:18183"
  9. def test_endpoint(path, method="GET", params=None):
  10. """测试一个端点"""
  11. url = f"{BASE_URL}{path}"
  12. print(f"\n{'='*60}")
  13. print(f"测试: {method} {url}")
  14. if params:
  15. print(f"参数: {params}")
  16. print('='*60)
  17. try:
  18. if method == "GET":
  19. response = requests.get(url, params=params, timeout=5)
  20. elif method == "POST":
  21. response = requests.post(url, json=params, timeout=5)
  22. print(f"状态码: {response.status_code}")
  23. print(f"响应时间: {response.elapsed.total_seconds():.3f}秒")
  24. try:
  25. data = response.json()
  26. print("响应内容:")
  27. print(json.dumps(data, indent=2, ensure_ascii=False))
  28. except:
  29. print("响应内容:")
  30. print(response.text[:500])
  31. except Exception as e:
  32. print(f"错误: {str(e)}")
  33. print("\n" + "🔍 探索 API 结构 ".center(70, "="))
  34. print(f"服务器: {BASE_URL}")
  35. # 测试常见的根路径
  36. print("\n\n📡 测试根路径...")
  37. test_endpoint("/")
  38. # 测试 API 路径
  39. print("\n\n📡 测试可能的 API 路径...")
  40. test_endpoint("/api")
  41. # 测试元数据相关路径
  42. print("\n\n📡 测试元数据相关路径...")
  43. possible_paths = [
  44. "/api/meta",
  45. "/api/metadata",
  46. "/meta",
  47. "/metadata",
  48. "/api/meta/list",
  49. "/api/meta/node/list",
  50. ]
  51. for path in possible_paths:
  52. test_endpoint(path)
  53. # 测试 health check
  54. print("\n\n📡 测试健康检查...")
  55. test_endpoint("/health")
  56. test_endpoint("/api/health")
  57. print("\n\n" + "="*70)
  58. print("探索完成!")
  59. print("="*70)