♻️ refactor(handlers): status 与 review 页面模板化
- HTML 提取至 templates/status.html、templates/review.html(go:embed 内嵌) - status.go 1022→271 行、review.go 1281→438 行,动态数据全部经 html/template 按上下文自动转义 - 评论循环/作者徽章/贴纸/图片条件渲染翻译为模板 range/if;emojiMap 以 template.JS 注入 - 与旧版渲染输出实测对比:22 条评论结构完全一致;差异仅为 JS 上下文安全转义(& 等)与 html/template 剥除 CSS 注释,均无功能影响 - 其余文件为 gofmt 顺手格式化
This commit is contained in:
1 parent
ad6d28fd85
commit
5bcc8a962e
29 files changed
+1267
-2893
No files matched your search
@@ -40,7 +40,7 @@ func currentMillis() int64 {
|
||||
// custom_bt = current_millis - elapsed_ms_since_boot
|
||||
func getCustomBT() string {
|
||||
var uptimeSeconds float64
|
||||
|
||||
|
||||
if runtime.GOOS == "linux" {
|
||||
// 在Linux上读取/proc/uptime
|
||||
data, err := os.ReadFile("/proc/uptime")
|
||||
@@ -54,7 +54,7 @@ func getCustomBT() string {
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
// 如果读取失败,使用time.monotonic作为备选
|
||||
if uptimeSeconds == 0 {
|
||||
// Go没有直接的monotonic API,使用启动时间估算
|
||||
@@ -65,17 +65,17 @@ func getCustomBT() string {
|
||||
// 这里可以使用进程启动时间作为近似
|
||||
uptimeSeconds = float64(time.Now().Unix() % 86400)
|
||||
}
|
||||
|
||||
|
||||
return fmt.Sprintf("%d", currentMillis()-int64(uptimeSeconds*1000))
|
||||
}
|
||||
|
||||
// generateDeviceInfo 随机生成设备及操作系统信息
|
||||
func generateDeviceInfo() map[string]interface{} {
|
||||
osVersion := androidVersions[randInt(len(androidVersions))]
|
||||
|
||||
|
||||
// 随机选择品牌
|
||||
deviceBrand := deviceBrands[randInt(len(deviceBrands))]
|
||||
|
||||
|
||||
// 根据品牌选择对应的型号
|
||||
models := brandModels[deviceBrand]
|
||||
deviceModel := models[randInt(len(models))]
|
||||
@@ -88,19 +88,19 @@ func generateDeviceInfo() map[string]interface{} {
|
||||
rand.Read(openUDIDBytes)
|
||||
|
||||
return map[string]interface{}{
|
||||
"os": "Android",
|
||||
"os_version": osVersion[0],
|
||||
"os_api": osVersion[1],
|
||||
"device_model": deviceModel,
|
||||
"device_brand": deviceBrand,
|
||||
"device_manufacturer": deviceBrand,
|
||||
"cpu_abi": "arm64-v8a",
|
||||
"release_build": releaseBuild,
|
||||
"cdid": generateUUID(),
|
||||
"sig_hash": "a4a27c2633195374c15651ffc3c4a497",
|
||||
"openudid": hex.EncodeToString(openUDIDBytes),
|
||||
"clientudid": generateUUID(),
|
||||
"req_id": generateUUID(),
|
||||
"os": "Android",
|
||||
"os_version": osVersion[0],
|
||||
"os_api": osVersion[1],
|
||||
"device_model": deviceModel,
|
||||
"device_brand": deviceBrand,
|
||||
"device_manufacturer": deviceBrand,
|
||||
"cpu_abi": "arm64-v8a",
|
||||
"release_build": releaseBuild,
|
||||
"cdid": generateUUID(),
|
||||
"sig_hash": "a4a27c2633195374c15651ffc3c4a497",
|
||||
"openudid": hex.EncodeToString(openUDIDBytes),
|
||||
"clientudid": generateUUID(),
|
||||
"req_id": generateUUID(),
|
||||
}
|
||||
}
|
||||
|
||||
@@ -130,9 +130,9 @@ func generateOptionalFields() (map[string]interface{}, map[string]int64) {
|
||||
|
||||
genTime := currentMillis()
|
||||
return map[string]interface{}{
|
||||
"rom": rom,
|
||||
"rom_version": fmt.Sprintf("coloros__%s.%s.%s release-keys", part1, part2, part3),
|
||||
"apk_first_install_time": genTime - int64(randInt(365))*86400000,
|
||||
"rom": rom,
|
||||
"rom_version": fmt.Sprintf("coloros__%s.%s.%s release-keys", part1, part2, part3),
|
||||
"apk_first_install_time": genTime - int64(randInt(365))*86400000,
|
||||
}, map[string]int64{
|
||||
"_gen_time": genTime,
|
||||
}
|
||||
@@ -307,7 +307,7 @@ func Register() (string, error) {
|
||||
|
||||
// 生成完整请求体数据
|
||||
data := GenerateFullRequestBody()
|
||||
|
||||
|
||||
// 只记录关键设备信息
|
||||
header := data["header"].(map[string]interface{})
|
||||
logger.Info(fmt.Sprintf("生成设备信息 - 品牌: %s, 型号: %s, 系统: Android %v",
|
||||
@@ -370,7 +370,7 @@ func Register() (string, error) {
|
||||
deviceModel,
|
||||
respData["install_id_str"])
|
||||
|
||||
logger.Info("设备注册成功!" )
|
||||
logger.Info("设备注册成功!")
|
||||
|
||||
// 尝试激活特权
|
||||
tryActivatePremium(header)
|
||||
@@ -381,4 +381,3 @@ func Register() (string, error) {
|
||||
logger.Warning("设备注册失败!")
|
||||
return "", fmt.Errorf("设备注册失败")
|
||||
}
|
||||
|
||||
Reference in new issue
Block a user