Categorygithub.com/cmstar/go-webapi-client
modulepackage
0.0.0-20230402104857-cf9764090cfe
Repository: https://github.com/cmstar/go-webapi-client.git
Documentation: pkg.go.dev

# README

webapi client

一个简单的 GUI 客户端,用于调用 go-webapi 库中相应协议开发的 Web API 。

安装

从源码

图形界面基于 Fyne 开发,编译源码需要本地有 gcc ,如果你本地没有, 可参考这里安装, Windows 建议安装 TDM-GCC 。

准备好环境后,执行:

go install github.com/cmstar/go-webapi-client/cmd/webapi-client@latest

在 Windows ,若直接双击运行 exe 会额外看到看到一个 cmd 窗口,如果不想看到这个窗口,可在安装时添加 -H=windowsgui 参数:

go install -ldflags -H=windowsgui github.com/cmstar/go-webapi-client/cmd/webapi-client@latest

编译较慢,需要耐心等待。

修改配置文件的存储路径

默认情况下,配置文件会被存储在用户的 home 目录的 .go-webapi-client 子目录:

  • 在 Mac/Linux 是 ~/.go-webapi-client
  • 在 Windows 是 %UserProfile%\.go-webapi-client

可以通过启动程序时添加 -c 参数来指定你想要的位置:

webapi-client -c=/my/favor/path

功能扩展

主窗口 client.MainWindow 支持在多个 client.Client 间的切换,每个 Client 表示一个界面。

package main

import (
	client "github.com/cmstar/go-webapi-client"
)

// 自己实现的 Client 接口。
var (
	myClient1 = NewMyClient1()
	myClient2 = NewMyClient2()
	myClient3 = NewMyClient3()
)

// 展示主窗体,可以通过菜单切换展示上面的三个 Client 。
func main() {
	client.RunClients([]client.Client{
		myClient1,
		myClient2,
		myClient3,
	})
}

# Packages

No description provided by the author
No description provided by the author
No description provided by the author

# Functions

返回默认的配置存储目录。默认存储在用户的 home 目录的 .go-webapi-client 子目录。 - 在 *nix 是 ~/.go-webapi-client - 在 Windows 是 %UserProfile%\.go-webapi-client.
创建一个 [ConfigManager] ,给定存放配置文件的根目录的路径。.
创建主界面。.
运行并展示主窗体,在窗体中展示给定的 [Client] 。 会从程序的启动参数中读取下列参数,其余参数均使用默认值: - -c 指定配置文件的存储目录。.

# Constants

默认的窗口高度。.
默认的窗口宽度。.

# Structs

用于读写配置。 配置存放在 rootPath 所指向的目录下,每个 ClientName 一个子目录, 每个 key 一个 .json 文件。 root |- ClientName1 | |- key1.json | |- key2.json |- ClientName2 | |- key1.json | |- key2.json 注意: - key 可以在不同的 ClientName 下重复。 - Windows 平台的文件名是大小写不敏感的;*nix 则是敏感的。.
程序的主界面。.
No description provided by the author

# Interfaces

描述一个 Web API 客户端的界面。.