diff --git a/handler/urlparser/url.go b/handler/urlparser/url.go index 19fb100..e6fdd99 100644 --- a/handler/urlparser/url.go +++ b/handler/urlparser/url.go @@ -86,7 +86,6 @@ func extractQQDocURL(input string) (string, error) { if err != nil { return "", fmt.Errorf("解析 JSON 失败: %w", err) } - url, _ = resolveFinalURL(url) return url, nil } @@ -114,6 +113,7 @@ func parseQQDocURL(jsonStr string) (string, error) { if !ok { return "", fmt.Errorf("找不到 qqdocurl 字段") } + url, _ = resolveFinalURL(url) url, _ = removeTrackingParams(url) } else if jsonData["app"] == "com.tencent.structmsg" { // 定位到 meta -> news -> jumpUrl meta, ok := jsonData["meta"].(map[string]interface{}) @@ -141,6 +141,7 @@ func parseQQDocURL(jsonStr string) (string, error) { if !ok { return "", fmt.Errorf("找不到 jumpUrl 字段") } + url, _ = resolveFinalURL(url) url, _ = removeTrackingParams(url) } else { return "", fmt.Errorf("未知的 app 类型")