diff --git a/packages/adapter-discord/src/bot.ts b/packages/adapter-discord/src/bot.ts index d0cd752476..59efa97ff0 100644 --- a/packages/adapter-discord/src/bot.ts +++ b/packages/adapter-discord/src/bot.ts @@ -29,7 +29,8 @@ export class DiscordBot extends Bot<'discord'> { async request(method: Method, path: string, data?: any, exHeaders?: any): Promise { const { axiosConfig, discord = {} } = this.app.options - const url = `https://discord.com/api/v8${path}` + const endpoint = discord.endpoint || 'https://discord.com/api/v8' + const url = `${endpoint}${path}` const headers: Record = { Authorization: `Bot ${this.token}`, } diff --git a/packages/adapter-discord/src/index.ts b/packages/adapter-discord/src/index.ts index f7b5283a50..444a5c3bbf 100644 --- a/packages/adapter-discord/src/index.ts +++ b/packages/adapter-discord/src/index.ts @@ -2,11 +2,11 @@ import { Adapter } from 'koishi-core' import { AxiosRequestConfig } from 'axios' import { DiscordBot } from './bot' import WsClient from './ws' -import * as dc from './types' +import * as DC from './types' export * from './bot' -export * as dc from './types' interface DiscordOptions extends Adapter.WsClientOptions { + endpoint?: string axiosConfig?: AxiosRequestConfig } @@ -15,11 +15,11 @@ declare module 'koishi-core' { discord?: DiscordOptions } - interface Session { + interface Session { discord?: { - mentions: dc.User[]; + mentions: DC.User[] // eslint-disable-next-line camelcase - webhook_id?: dc.snowflake + webhook_id?: DC.snowflake flags: number } }