最佳方式使用大猩猩複用,我現在有很多網址的格式爲:Golang大猩猩MUX,以配合對兩名網址簽名
domain.com/org/{subdomain}/{name}/pagename
使得代碼如下所示:
rtr.HandleFunc("/org/{subdomain}/{name}/promote", promoteView)
我想也是對陣:
subdomain.domain.com/{name}/pagename
我知道我可以這樣做
rtr.Host("{subdomain:[a-z]+}.domain.com").HandleFunc("/{name}/promote", promoteView)
匹配的子域。是否有可能只有一個HandleFunc()匹配這兩種類型的URL,還是我需要兩個HandleFunc(),一個用於第一種情況,一個用於subdomain.domain.com情況?
將它們作爲2條路線處理有什麼問題?他們都可以指向相同的處理函數。你必須以某種方式聲明路徑和主機,所以沒有辦法縮短它。 – JimB
我有大約100個處理程序,並希望避免代碼臃腫/維護問題與每個重複路線。 –
@MarkFletcher查看我的解決方案 – metakeule