Class BaseKookClient
表示一个可以连接到 KOOK API 的通用的 KOOK 客户端。
public abstract class BaseKookClient : IKookClient, IDisposable
- Inheritance
-
BaseKookClient
- Implements
- Derived
- Inherited Members
Properties
ConnectionState
获取当前连接的状态。
public virtual ConnectionState ConnectionState { get; }
Property Value
CurrentUser
获取登录到此客户端的当前用户;如果未登录,则为 null
。
public ISelfUser? CurrentUser { get; protected set; }
Property Value
LoginState
获取此客户端的登录状态。
public LoginState LoginState { get; protected set; }
Property Value
TokenType
获取已登录用户的令牌类型。
public TokenType TokenType { get; }
Property Value
Methods
Dispose()
Performs application-defined tasks associated with freeing, releasing, or resetting unmanaged resources.
public void Dispose()
LoginAsync(TokenType, string, bool)
登录到 KOOK API。
public Task LoginAsync(TokenType tokenType, string token, bool validateToken = true)
Parameters
Returns
- Task
一个表示异步登录操作的任务。
Remarks
验证令牌的操作是通过 ValidateToken(TokenType, string) 方法完成的。
此方法用于向当前客户端设置后续 API 请求的身份验证信息,获取并设置当前所登录用户的信息。
LogoutAsync()
从 KOOK API 退出登录。
public Task LogoutAsync()
Returns
- Task
一个表示异步退出登录操作的任务。
Remarks
此方法用于清除当前客户端的身份验证信息及所缓存的当前所登录的用户信息。
Events
Log
当生成一条日志消息时引发。
public event Func<LogMessage, Task> Log
Event Type
Remarks
事件参数:
- LogMessage 参数是描述日志消息的结构。
LoggedIn
当客户端登录成功时引发。
public event Func<Task> LoggedIn
Event Type
LoggedOut
当客户端退出登录时引发。
public event Func<Task> LoggedOut
Event Type
SentRequest
当向 API 发送 REST 请求时引发。
public event Func<HttpMethod, string, double, Task> SentRequest
Event Type
- Func<HttpMethod, string, double, Task>
Remarks
事件参数:
- HttpMethod 参数是 HTTP 方法。
- string 参数是终结点。
- double 参数是完成请求所花费的时间,以毫秒为单位。