查看全局 API 说明(请求/响应头、通用 JSON 格式)
v1
稳定
高校基础信息 API
提供全国高校基础信息查询、搜索与元数据统计
Base URL
https://www.resapi.cn/v1/colleges
简介
用于高校名录检索、筛选与详情查看。支持按省市、层级、办学类型和 985/211 等标签过滤。
GET /v1/colleges
高校列表,支持分页与多维筛选。
查询参数
| 名称 | 类型 | 必填 | 说明 | 示例 |
|---|---|---|---|---|
| page | int | 否 | 页码,默认 1 | 1 |
| page_size | int | 否 | 每页条数,默认 10,最大 50 | 10 |
| province | string | 否 | 省份 | 北京 |
| city | string | 否 | 城市 | 海淀区 |
| level | string | 否 | 层次:undergraduate / vocational |
undergraduate |
| school_type | string | 否 | 办学类型 | 综合类 |
| nature_type | string | 否 | 性质 | 公办 |
| is_985 | bool | 否 | 是否 985 | true |
| is_211 | bool | 否 | 是否 211 | true |
| is_national_key | bool | 否 | 是否国家重点 | true |
| is_private | bool | 否 | 是否民办 | false |
| is_art | bool | 否 | 是否艺术类 | false |
GET /v1/colleges/search
按关键词搜索高校(名称、简称、英文名、代码等)。
查询参数
| 名称 | 类型 | 必填 | 说明 | 示例 |
|---|---|---|---|---|
| q | string | 是 | 搜索关键词 | 北京大学 |
| page | int | 否 | 页码 | 1 |
| page_size | int | 否 | 每页条数 | 10 |
支持与列表相同的筛选参数(province、is_985 等)。
GET /v1/colleges/{id}
按主键查询高校详情(完整字段)。
GET /v1/colleges/code/{code}
按教育部学校代码查询,同一代码可能返回多条(本部、医学院、校区等)。
GET /v1/colleges/meta/provinces
各省份高校数量统计。
GET /v1/colleges/meta/levels
办学层次统计。
GET /v1/colleges/meta/school-types
办学类型列表。
通用错误码
以下错误码适用于平台全部 /v1/* 接口(各接口在「错误代码」Tab 中另有本接口补充说明)。
错误响应格式
HTTP 状态码非 2xx 时,响应体一般为:
{
"error": {
"code": "错误码",
"message": "错误信息"
}
}
错误码一览
| HTTP | code | message | 说明 |
|---|---|---|---|
| 400 | invalid_params | 参数无效 | 必填参数缺失、格式不合法或超出允许范围 |
| 404 | not_found | 资源不存在 | 按编码或 ID 查询时无匹配记录 |
| 429 | rate_limit_exceeded | 请求过于频繁 | 超过当前 IP 的访问频率限制 |
| 500 | internal_error | 服务器内部错误 | 服务端或数据库异常,请稍后重试 |
限流、缓存等 HTTP 响应头含义见上文「响应头说明」。
本接口补充
| HTTP | code | message | 说明 |
|---|---|---|---|
| 400 | invalid_params | 参数无效 | page/page_size/q/id 等参数不合法 |
| 404 | not_found | 资源不存在 | id 或 code 未命中 |
请求根地址为 https://www.resapi.cn。每个场景含 7 种语言(cURL → JavaScript → Python → Go → Java → PHP → C#)。
列表筛选
GET /v1/colleges?province=北京&is_985=true&level=undergraduate&page=1&page_size=10
cURL
curl -s "https://www.resapi.cn/v1/colleges?province=%E5%8C%97%E4%BA%AC&is_985=true&level=undergraduate&page=1&page_size=10" \
-H "Accept: application/json"
JavaScript
const url = new URL("https://www.resapi.cn/v1/colleges");
url.searchParams.set("province", "北京");
url.searchParams.set("is_985", "true");
url.searchParams.set("level", "undergraduate");
url.searchParams.set("page", "1");
url.searchParams.set("page_size", "10");
const res = await fetch(url, { headers: { Accept: "application/json" } });
if (!res.ok) throw new Error(res.statusText);
console.log(await res.json());
Python
import requests
r = requests.get(
"https://www.resapi.cn/v1/colleges",
params={"province": "北京", "is_985": True, "level": "undergraduate", "page": 1, "page_size": 10},
headers={"Accept": "application/json"},
timeout=30,
)
r.raise_for_status()
print(r.json())
Go
url := "https://www.resapi.cn/v1/colleges?province=%E5%8C%97%E4%BA%AC&is_985=true&level=undergraduate&page=1&page_size=10"
req, _ := http.NewRequest(http.MethodGet, url, nil)
req.Header.Set("Accept", "application/json")
resp, err := http.DefaultClient.Do(req)
if err != nil {
log.Fatal(err)
}
defer resp.Body.Close()
var out map[string]any
json.NewDecoder(resp.Body).Decode(&out)
fmt.Printf("%+v\n", out)
Java
String url = "https://www.resapi.cn/v1/colleges?province=%E5%8C%97%E4%BA%AC&is_985=true&level=undergraduate&page=1&page_size=10";
HttpRequest req = HttpRequest.newBuilder().uri(URI.create(url)).header("Accept", "application/json").GET().build();
HttpResponse<String> res = HttpClient.newHttpClient().send(req, HttpResponse.BodyHandlers.ofString());
System.out.println(res.body());
PHP
<?php
$url = "https://www.resapi.cn/v1/colleges?province=%E5%8C%97%E4%BA%AC&is_985=true&level=undergraduate&page=1&page_size=10";
$ctx = stream_context_create(["http" => ["header" => "Accept: application/json\r\n"]]);
print_r(json_decode(file_get_contents($url, false, $ctx), true));
C#
var json = await client.GetStringAsync("https://www.resapi.cn/v1/colleges?province=%E5%8C%97%E4%BA%AC&is_985=true&level=undergraduate&page=1&page_size=10");
Console.WriteLine(json);
详情
GET /v1/colleges/1
cURL
curl -s "https://www.resapi.cn/v1/colleges/1" -H "Accept: application/json"