查看未保存的 JAR
OpenAPI 契约
- 方法
- POST
- 路径
/api/v1/analyses/input-index- 认证
- jwtBearer (bearer)
- 响应状态
- 200 400 401 403 404 413 429 500
请求与响应 Schema
JSON
{
"requestBody": {
"multipart/form-data": {
"properties": {
"file": {
"format": "binary",
"type": "string"
}
},
"required": [
"file"
],
"type": "object"
}
},
"responses": {
"200": {
"description": "Input class and member metadata",
"content": {
"application/json": {
"$ref": "#/components/schemas/Index"
}
}
},
"400": {
"description": "Invalid request",
"content": {
"application/json": {
"$ref": "#/components/schemas/RequestError"
}
}
},
"401": {
"description": "Authentication required",
"content": {
"application/json": {
"$ref": "#/components/schemas/SecurityError"
}
}
},
"403": {
"description": "Not permitted",
"content": {
"application/json": {
"$ref": "#/components/schemas/SecurityError"
}
}
},
"404": {
"description": "Analysis or input not found",
"content": {
"application/json": {
"$ref": "#/components/schemas/ApiError"
}
}
},
"413": {
"description": "Upload or expanded archive exceeds its limit",
"content": {
"application/json": {
"$ref": "#/components/schemas/ApiError"
}
}
},
"429": {
"description": "Request or concurrency limit exceeded",
"content": {
"application/json": {
"$ref": "#/components/schemas/RateLimitError"
}
}
},
"500": {
"description": "Unexpected server error",
"content": {
"application/json": {
"$ref": "#/components/schemas/ApiError"
}
}
}
}
}上传 JAR,在启动分析前获取可搜索的精确类、成员和资源候选。上传仍经过正常校验。返回的输入哈希标识已索引的字节。索引不会执行应用、启动分析或启用对象局部化。选择符号不表示所有未知运行时行为均已声明。
索引在 classes、resources 和 inputInspection 外包含 entryPointCandidates。每个候选具有 className、method、descriptor、entryName 和 source: "PUBLIC_STATIC_MAIN",标识检查到的 public static main 方法,其精确描述符为 ([Ljava/lang/String;)V。用户必须选择真实的应用入口。候选不包含 manifest 或注解入口检测,也不会自动应用。