 Documentation
      ¶
      Documentation
      ¶
    
    
  
    
  
    Index ¶
- Variables
- func PingHandleFunc(r *Request, w *Response)
- func RegistryCmdHandleFunc(command string, fn HandleFunc)
- type HandleFunc
- type Logger
- type Request
- type Response
- type StdTerminal
- type TerminalResizer
- type TerminalSize
- type WebSocketTerminal
- func (t *WebSocketTerminal) Close() error
- func (i *WebSocketTerminal) Failed(err error)
- func (t *WebSocketTerminal) HandleCmd(m []byte)
- func (t *WebSocketTerminal) Read(p []byte) (n int, err error)
- func (t *WebSocketTerminal) ReadBinData(success func([]byte), failed func(error))
- func (i *WebSocketTerminal) ReadReq(req any) error
- func (i *WebSocketTerminal) ResetWriteBuf()
- func (i *WebSocketTerminal) Response(resp *Response)
- func (i *WebSocketTerminal) SetAuditor(rw io.ReadWriter)
- func (i *WebSocketTerminal) Success(msg string)
- func (i *WebSocketTerminal) Write(p []byte) (n int, err error)
- func (i *WebSocketTerminal) WriteText(msg string)
- func (i *WebSocketTerminal) WriteTextf(format string, a ...any)
- func (i *WebSocketTerminal) WriteTextln(format string, a ...any)
- func (i *WebSocketTerminal) WriteTo(r io.Reader) (err error)
 
Constants ¶
This section is empty.
Variables ¶
      View Source
      
  
var ( // 4K DefaultWriteBuf = 4 * 1024 // 1K DefaultReadBuf = 1 * 1024 )
Functions ¶
func PingHandleFunc ¶
处理来源客户端实现的自定义Ping, 因为浏览器并没有实现客户端Ping功能
Types ¶
type HandleFunc ¶
基于Websocket的请求响应模式, 用于websocket的指令控制设计
func GetCmdHandleFunc ¶
func GetCmdHandleFunc(command string) HandleFunc
type Request ¶
type Request struct {
	// 请求Id
	Id string `json:"id"`
	// 指令名称
	Command string `json:"command"`
	// 指令参数
	Params json.RawMessage `json:"params"`
}
    func NewRequest ¶
func NewRequest() *Request
func ParseRequest ¶
type Response ¶
type Response struct {
	Request *Request `json:"request"`
	// 异常信息
	Message string `json:"message"`
	// 处理成功后的数据
	Data any `json:"data"`
}
    func NewResponse ¶
func NewResponse() *Response
func (*Response) SetMessage ¶
type StdTerminal ¶
type StdTerminal struct {
	*mock.ServerStreamBase
	*TerminalResizer
}
    func NewStdTerminal ¶
func NewStdTerminal(width, height uint16) *StdTerminal
func (*StdTerminal) Next ¶
func (i *StdTerminal) Next() *remotecommand.TerminalSize
Next returns the new terminal size after the terminal has been resized. It returns nil when monitoring has been stopped.
type TerminalResizer ¶
type TerminalResizer struct {
	// contains filtered or unexported fields
}
    func NewTerminalSize ¶
func NewTerminalSize() *TerminalResizer
func (*TerminalResizer) Next ¶
func (i *TerminalResizer) Next() *remotecommand.TerminalSize
Next returns the new terminal size after the terminal has been resized. It returns nil when monitoring has been stopped.
func (*TerminalResizer) SetSize ¶
func (i *TerminalResizer) SetSize(ts TerminalSize)
type TerminalSize ¶
type TerminalSize struct {
	// 终端的宽度
	// @gotags: json:"width"
	Width uint16 `json:"width"`
	// 终端的高度
	// @gotags: json:"heigh"
	Heigh uint16 `json:"heigh"`
}
    func NewTerminalSzie ¶
func NewTerminalSzie() *TerminalSize
type WebSocketTerminal ¶
type WebSocketTerminal struct {
	*TerminalResizer
	*mock.ServerStreamBase
	// contains filtered or unexported fields
}
    func NewWebSocketTerminal ¶
func NewWebSocketTerminal(conn *websocket.Conn) *WebSocketTerminal
func (*WebSocketTerminal) Close ¶
func (t *WebSocketTerminal) Close() error
func (*WebSocketTerminal) Failed ¶
func (i *WebSocketTerminal) Failed(err error)
func (*WebSocketTerminal) HandleCmd ¶
func (t *WebSocketTerminal) HandleCmd(m []byte)
func (*WebSocketTerminal) ReadBinData ¶
func (t *WebSocketTerminal) ReadBinData(success func([]byte), failed func(error))
读取二进制数据, 而读取过程中指令会自动处理
func (*WebSocketTerminal) ReadReq ¶
func (i *WebSocketTerminal) ReadReq(req any) error
func (*WebSocketTerminal) ResetWriteBuf ¶
func (i *WebSocketTerminal) ResetWriteBuf()
func (*WebSocketTerminal) SetAuditor ¶
func (i *WebSocketTerminal) SetAuditor(rw io.ReadWriter)
func (*WebSocketTerminal) Success ¶
func (i *WebSocketTerminal) Success(msg string)
func (*WebSocketTerminal) WriteText ¶
func (i *WebSocketTerminal) WriteText(msg string)
func (*WebSocketTerminal) WriteTextf ¶
func (i *WebSocketTerminal) WriteTextf(format string, a ...any)
func (*WebSocketTerminal) WriteTextln ¶
func (i *WebSocketTerminal) WriteTextln(format string, a ...any)
 Click to show internal directories. 
   Click to hide internal directories.