MCPcopy Create free account
hub / github.com/V2RaySSR/RealityChecker / getLatestVersion

Function getLatestVersion

internal/ui/display.go:58–96  ·  view source on GitHub ↗

getLatestVersion 获取GitHub最新版本号

()

Source from the content-addressed store, hash-verified

56
57// getLatestVersion 获取GitHub最新版本号
58func getLatestVersion() string {
59 // 设置超时时间
60 client := &http.Client{
61 Timeout: 5 * time.Second,
62 }
63
64 // 请求GitHub API
65 resp, err := client.Get("https://api.github.com/repos/V2RaySSR/RealityChecker/releases/latest")
66 if err != nil {
67 return "" // 网络错误时返回空字符串
68 }
69 defer resp.Body.Close()
70
71 if resp.StatusCode != http.StatusOK {
72 return "" // HTTP错误时返回空字符串
73 }
74
75 // 读取响应
76 body, err := io.ReadAll(resp.Body)
77 if err != nil {
78 return "" // 读取错误时返回空字符串
79 }
80
81 // 解析JSON
82 var release GitHubRelease
83 if err := json.Unmarshal(body, &release); err != nil {
84 return "" // 解析错误时返回空字符串
85 }
86
87 // 返回版本号,如果没有tag_name则使用name
88 if release.TagName != "" {
89 return release.TagName
90 }
91 if release.Name != "" {
92 return release.Name
93 }
94
95 return "" // 没有版本信息时返回空字符串
96}
97
98// getVersionInfo 获取版本信息字符串
99func getVersionInfo() string {

Callers 1

getVersionInfoFunction · 0.85

Calls

no outgoing calls

Tested by

no test coverage detected