package blink import "strings" const ( route = "c" //H5活动路由关键字 downloadRoute = "d" //H5活动下载页路由关键字 webRoute = "p" //H5站外活动路由关键字 // query关键字 campaignHashIdKey = "l" //H5活动hash_id关键字 campaignCmarkKey = "c" //H5活动渠道id关键字 campaignCmarkWithWebKey = "cw" //H5活动渠道站外渠道 subUserIdParamKey = "u" //H5活动第三方用户id分享关键字 projectSceneKey = "s" //项目应用场景值 campaignDynamicKey = "dy" //动态下载链接关键字 campaignContentLinkKey = "ct" //下载页内容链接关键字 langParamKey = "lg" //语言关键字 levelParamKey = "lv" //用户等级关键字 viewerParamKey = "vt" //预览用户关键字 campaignUserIdKey = "user_id" //活动用户id关键字 adsJumpChannel = "channel" //广告策略id关键字 centerHashIdKey = "t" //任务中心hash_id关键字 centerModuleIdKey = "tm" //任务中心模块id关键字 gameLinkIdKey = "tlgid" //游戏id关键字 gameProjectIdKey = "tlpid" //项目id关键字 ) type link struct { host string //域名 hashId string //活动hashId cmark string //渠道标识 } // GetUrlCampaignHashId 获取url中的活动hashid func GetUrlCampaignHashId(url string) string { _, query, found := strings.Cut(url, "?") if !found || query == "" { return "" } paramsArr := strings.Split(query, "&") for _, v := range paramsArr { key, val, ok := strings.Cut(v, "=") if !ok { continue } if key == campaignHashIdKey { return val } } return "" }