API 文档

MazeGenerator API 接口文档和使用指南

目录

API 概述

MazeGenerator API 提供了程序化生成和导出迷宫的能力。通过 RESTful API,您可以:

  • 生成不同难度和尺寸的迷宫
  • 自定义迷宫参数(E值、R值等)
  • 导出多种格式(PNG、PDF、SVG、JSON)
  • 批量生成迷宫

Base URL

https://api.mazegenerator.com/v1

身份验证

所有 API 请求都需要在 Authorization 头中包含有效的 API 密钥:

Authorization: Bearer YOUR_API_KEY

注意: API 密钥可以在您的账户设置中获取。请妥善保管您的密钥。

生成迷宫

POST /mazes/generate

生成一个新的迷宫

请求参数

{
  "difficulty": "adult",
  "width": 30,
  "height": 30,
  "e_value": 25,
  "r_value": 35,
  "seed": "12345",
  "symmetric": false,
  "solvable": true
}

响应示例

{
  "id": "maze_123456",
  "difficulty": "adult",
  "width": 30,
  "height": 30,
  "generation_time": "3ms",
  "solution_length": 48,
  "data": "...",
  "created_at": "2025-01-19T10:30:00Z"
}

导出迷宫

GET /mazes/{id}/export

导出指定格式的迷宫

查询参数

format - 导出格式 (png, pdf, svg, json)
show_solution - 是否显示解答 (true, false)
quality - 图片质量 (low, medium, high)

示例请求

GET /mazes/maze_123456/export?format=png&show_solution=true&quality=high

示例代码

JavaScript

const response = await fetch('https://api.mazegenerator.com/v1/mazes/generate', {
  method: 'POST',
  headers: {
    'Authorization': 'Bearer YOUR_API_KEY',
    'Content-Type': 'application/json'
  },
  body: JSON.stringify({
    difficulty: 'adult',
    width: 30,
    height: 30
  })
});

const maze = await response.json();
console.log(maze);

Python

import requests

headers = {
    'Authorization': 'Bearer YOUR_API_KEY',
    'Content-Type': 'application/json'
}

data = {
    'difficulty': 'adult',
    'width': 30,
    'height': 30
}

response = requests.post(
    'https://api.mazegenerator.com/v1/mazes/generate',
    headers=headers,
    json=data
)

maze = response.json()
print(maze)

错误处理

API 使用标准的 HTTP 状态码来表示请求的结果:

200 - 请求成功
400 - 请求参数错误
401 - 身份验证失败
429 - 请求频率超限
500 - 服务器内部错误

错误响应格式

{
  "error": {
    "code": "INVALID_PARAMETERS",
    "message": "Width must be between 5 and 100",
    "details": {
      "parameter": "width",
      "value": 200
    }
  }
}

需要帮助?

如果您在使用 API 时遇到问题,请联系我们的技术支持团队。