116 lines
3.6 KiB
JavaScript
116 lines
3.6 KiB
JavaScript
import { config, getOverrideHandler, getOverridePreHandler } from "../config.js"
|
|
|
|
export const meta = {
|
|
method: "GET",
|
|
url: "/",
|
|
schema: {
|
|
summary: "获取 Meta 信息",
|
|
description: "获取服务器元数据。详情请见 authlib-injector 文档。",
|
|
tags: [ "api" ],
|
|
response: {
|
|
200: {
|
|
"type": "object",
|
|
"properties": {
|
|
"meta": {
|
|
"type": "object",
|
|
"properties": {
|
|
"serverName": {
|
|
"type": "string"
|
|
},
|
|
"implementationName": {
|
|
"type": "string"
|
|
},
|
|
"implementationVersion": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
},
|
|
"skinDomains": {
|
|
"type": "string"
|
|
},
|
|
"signaturePublickey": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
preHandler: getOverridePreHandler("/"),
|
|
handler: getOverrideHandler("/") ?? async function(req, rep) {
|
|
rep.code(200).send({
|
|
meta: {
|
|
serverName: config.server.serverName,
|
|
implementationName: "lsp-yggdrasil",
|
|
implementationVersion: "1.0",
|
|
|
|
},
|
|
skinDomains: config.server.skinDomain,
|
|
signaturePublickey: this.keys.publicKey
|
|
})
|
|
}
|
|
}
|
|
|
|
export const status = {
|
|
method: "GET",
|
|
url: "/status",
|
|
schema: {
|
|
summary: "获取服务器信息",
|
|
description: "获取服务器基本信息",
|
|
tags: [ "webapi" ],
|
|
response: {
|
|
200: {
|
|
"type": "object",
|
|
"properties": {
|
|
"public": {
|
|
"type": "string"
|
|
},
|
|
"version": {
|
|
"type": "string"
|
|
},
|
|
"api": {
|
|
"type": "object",
|
|
|
|
},
|
|
"server": {
|
|
"type": "string"
|
|
},
|
|
"env": {
|
|
"type": "object",
|
|
"properties": {
|
|
"node": {
|
|
"type": "string"
|
|
},
|
|
"os": {
|
|
"type": "string"
|
|
},
|
|
"arch": {
|
|
"type": "string"
|
|
},
|
|
"t": {
|
|
"type": "number"
|
|
},
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
preHandler: getOverridePreHandler("/status"),
|
|
handler: getOverrideHandler("/status") ?? async function(req, rep) {
|
|
rep.code(200).send({
|
|
public: this.keys.publicKey,
|
|
version: "1.0",
|
|
api: {
|
|
yggdrasil: "authlib-injector",
|
|
webapi: "standard-1.0"
|
|
},
|
|
server: "lsp-yggdrasil",
|
|
env: {
|
|
"node": process.version,
|
|
"os": process.platform,
|
|
"arch": process.arch,
|
|
"t": Date.now(),
|
|
}
|
|
})
|
|
}
|
|
} |