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(), } }) } }