From 39a78b65f0e6fffdab306a4ee7a0c69a6450f72e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E8=82=A5=E7=BE=8A?= Date: Tue, 7 Feb 2023 06:30:24 +0800 Subject: [PATCH] improve --- Golang/main.go | 52 ++++++++++++++------------------------------------ 1 file changed, 14 insertions(+), 38 deletions(-) diff --git a/Golang/main.go b/Golang/main.go index b307f55..9c18270 100644 --- a/Golang/main.go +++ b/Golang/main.go @@ -14,6 +14,16 @@ import ( "net/http" ) +func duanyan(adurl string, realurl any) string { + var liveurl string + if str, ok := realurl.(string); ok { + liveurl = str + } else { + liveurl = adurl + } + return liveurl +} + func setupRouter(adurl string) *gin.Engine { gin.SetMode(gin.ReleaseMode) r := gin.Default() @@ -21,16 +31,10 @@ func setupRouter(adurl string) *gin.Engine { r.GET("/douyin", func(c *gin.Context) { url := c.Query("url") quality := c.DefaultQuery("quality", "origin") - var dyliveurl string douyinobj := &liveurls.Douyin{} douyinobj.Shorturl = url douyinobj.Quality = quality - dyurl := douyinobj.GetRealurl() - if str, ok := dyurl.(string); ok { - dyliveurl = str - } else { - dyliveurl = adurl - } + dyliveurl := duanyan(adurl, douyinobj.GetRealurl()) c.Redirect(http.StatusMovedPermanently, dyliveurl) }) @@ -39,51 +43,23 @@ func setupRouter(adurl string) *gin.Engine { rid := c.Param("rid") switch path { case "douyin": - var dyliveurl string douyinobj := &liveurls.Douyin{} douyinobj.Rid = rid - dyurl := douyinobj.GetDouYinUrl() - if str, ok := dyurl.(string); ok { - dyliveurl = str - } else { - dyliveurl = adurl - } + dyliveurl := duanyan(adurl, douyinobj.GetDouYinUrl()) c.Redirect(http.StatusMovedPermanently, dyliveurl) case "douyu": - var douyuurl string douyuobj := &liveurls.Douyu{} douyuobj.Rid = rid douyuobj.Stream_type = c.DefaultQuery("stream", "hls") douyuobj.Cdn_type = c.DefaultQuery("cdn", "akm-tct") - douyuliveurl := douyuobj.GetRealUrl() - if str, ok := douyuliveurl.(string); ok { - douyuurl = str - } else { - douyuurl = adurl - } + douyuurl := duanyan(adurl, douyuobj.GetRealUrl()) c.Redirect(http.StatusMovedPermanently, douyuurl) case "huya": - var huyaurl string huyaobj := &liveurls.Huya{} huyaobj.Rid = rid - hyurl := huyaobj.GetLiveUrl() - if str, ok := hyurl.(string); ok { - huyaurl = str - } else { - huyaurl = adurl - } + huyaurl := duanyan(adurl, huyaobj.GetLiveUrl()) c.Redirect(http.StatusMovedPermanently, huyaurl) case "bilibili": - //var biliurl string - //biliobj := &liveurls.BiliBili{} - //biliobj.Rid = rid - //biurl := biliobj.GetPlayUrl() - //if str, ok := biurl.(string); ok { - // biliurl = str - //} else { - // biliurl = adurl - //} - //c.Redirect(http.StatusMovedPermanently, biliurl) c.String(http.StatusOK, "待重写中") } })