1. ADMIN 及以上可访问
HnieOJ
  • 用户模块
    • 公开接口
      • 登录接口
      • 注册用户
    • STUDENT 及以上可访问
      • 获取当前登录用户信息
      • 获取用户列表
      • 根据 uid 获取用户信息
      • 检查用户是否存在
    • ADMIN 及以上可访问
      • 创建用户
      • 更新用户信息
      • 修改用户密码
      • 删除用户
      • 批量禁用用户
      • 批量激活用户
      • 批量删除用户
      • 获取权限用户列表
      • 搜索用户
      • 批量赋予权限
      • 更新用户权限
      • 撤销权限
      • 批量撤销权限
      • 获取申请注册用户列表
      • 通过注册申请
      • 驳回注册申请
      • 批量通过注册申请
      • 下载用户导入模板
  • 用户成就模块
    • STUDENT 及以上可访问
      • 获取用户成就列表
      • 提交成就认证申请
    • ADMIN 及以上可访问
      • 添加用户成就
      • 删除用户成就
      • 获取用户成就申请列表
      • 通过成就认证申请
      • 驳回成就认证申请
  • 基础数据模块
    • STUDENT 及以上可访问
      • 获取年级列表
      • 获取学院列表
      • 获取班级列表
      • 获取班级老师列表
      • 获取班级助教列表
  • 题目模块
    • STUDENT 及以上可访问
      • 获取题目列表
      • 获取题目详情
      • 检查题目是否存在
    • TEACHER 及以上可访问
      • 下载全部测试数据
      • 下载指定测试点
    • ADMIN 及以上可访问
      • 获取题目列表 (Admin)
        GET
      • 添加題目
        POST
      • 编辑题目
        PUT
      • 删除题目
        DELETE
      • 切换题目公开状态
        PUT
      • 上传或更新测试数据
        POST
      • 上传题面图片
        POST
      • 删除题面图片
        DELETE
  • 提交模块
    • STUDENT 及以上可访问
      • 提交代码
      • 获取提交记录列表
      • 获取提交记录详情
      • 获取提交测试点结果
    • TEACHER 及以上可访问
      • 重判单个提交
      • 查询判题任务 outbox
      • 手动重试判题任务 outbox
      • 创建批量重判任务
      • 查询批量重判任务
    • STOMP WebSocket
  • 判题模块
    • 判题节点认证接口
      • 临时判题节点兑换短期 Token
    • ADMIN 及以上可访问
      • 创建临时判题节点授权码
      • 轮换正式判题节点长期 Token
      • 查询判题节点短期 Token
      • 吊销判题节点短期 Token
      • 查询判题节点状态
  • 比赛模块
    • STUDENT 及以上可访问
      • 获取比赛列表
      • 获取比赛详情
      • 检查比赛 ID 有效性
    • ADMIN 及以上可访问
      • 获取比赛列表 (Admin)
      • 添加比赛
      • 编辑比赛
      • 删除比赛
      • 切换比赛状态
      • 获取比赛详情 (Admin)
      • 获取比赛队伍列表
      • 添加比赛队伍
      • 更新比赛队伍
      • 删除比赛队伍
      • 批量删除比赛队伍
  • 题单模块
    • STUDENT 及以上可访问
      • 获取题单列表
      • 获取题单详情
      • 获取题单题目列表
    • ADMIN 及以上可访问
      • 获取题单列表 (Admin)
      • 添加题单
      • 编辑题单
      • 删除题单
      • 切换题单状态
  • 作业模块
    • STUDENT 及以上可访问
      • 获取作业列表
      • 获取作业详情
    • ADMIN 及以上可访问
      • 获取作业列表 (Admin)
      • 添加作业
      • 编辑作业
      • 删除作业
      • 切换作业状态
      • 获取作业详情 (Admin)
  • 讨论模块
    • STUDENT 及以上可访问
      • 获取讨论列表
      • 获取讨论详情
      • 点赞 / 点踩
      • 新建讨论
      • 发布回答
      • 发布评论
      • 获取相关讨论
    • ADMIN 及以上可访问
      • 获取讨论列表 (Admin)
      • 编辑讨论
      • 删除讨论
  • 公告/新闻模块
    • STUDENT 及以上可访问
      • 获取公告列表
      • 获取公告详情
    • ADMIN 及以上可访问
      • 获取公告列表(Admin)
      • 创建公告
      • 更新公告
      • 删除公告
      • 更新公告上下线状态
  • 系统模块
    • 公开接口
      • 获取系统公开信息
      • 获取系统时间
    • ADMIN 及以上可访问
      • 获取系统配置
      • 更新系统配置
      • 获取远程评测账号列表
      • 重置 Judger Token
  1. ADMIN 及以上可访问

添加題目

开发中
POST
/api/admin/problem

请求参数

Authorization
在 Header 添加参数
Authorization
,其值为在 Bearer 之后拼接 Token
示例:
Authorization: Bearer ********************
Body 参数application/json必填

示例
{
    "problem": {
        "problemCode": "P1037",
        "title": "A + B Problem",
        "author": "admin",
        "type": 0,
        "judgeMode": "default",
        "timeLimit": 1000,
        "memoryLimit": 256,
        "stackLimit": 256,
        "description": "给定两个整数 a 和 b,输出它们的和。",
        "input": "一行两个整数 a b",
        "output": "输出一个整数,表示 a+b",
        "examples": [
            {
                "input": "1 2",
                "output": "3"
            }
        ],
        "hint": "注意整数范围",
        "difficulty": 0,
        "auth": 1,
        "ioScore": 100,
        "isRemote": false,
        "source": "Mock",
        "spjCode": "",
        "spjLanguage": "",
        "isRemoveEndBlank": true,
        "openCaseResult": false
    },
    "judgeMode": "default",
    "languages": [
        "C",
        "C++",
        "Java",
        "Python3"
    ],
    "tags": [
        "算法",
        "数据结构"
    ]
}

请求示例代码

Shell
JavaScript
Java
Swift
Go
PHP
Python
HTTP
C
C#
Objective-C
Ruby
OCaml
Dart
R
请求示例请求示例
Shell
JavaScript
Java
Swift
curl --location 'http://localhost:8080/api/admin/problem' \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '{
    "problem": {
        "problemCode": "P1037",
        "title": "A + B Problem",
        "author": "admin",
        "type": 0,
        "judgeMode": "default",
        "timeLimit": 1000,
        "memoryLimit": 256,
        "stackLimit": 256,
        "description": "给定两个整数 a 和 b,输出它们的和。",
        "input": "一行两个整数 a b",
        "output": "输出一个整数,表示 a+b",
        "examples": [
            {
                "input": "1 2",
                "output": "3"
            }
        ],
        "hint": "注意整数范围",
        "difficulty": 0,
        "auth": 1,
        "ioScore": 100,
        "isRemote": false,
        "source": "Mock",
        "spjCode": "",
        "spjLanguage": "",
        "isRemoveEndBlank": true,
        "openCaseResult": false
    },
    "judgeMode": "default",
    "languages": [
        "C",
        "C++",
        "Java",
        "Python3"
    ],
    "tags": [
        "算法",
        "数据结构"
    ]
}'

返回响应

🟢200成功
application/json
Bodyapplication/json

示例
{
    "code": 200,
    "msg": "添加成功",
    "data": null
}
修改于 2026-02-27 08:30:22
上一页
获取题目列表 (Admin)
下一页
编辑题目
Built with