Durante la scrittura di client API, qual è il modo corretto di concatenare un URL insieme a più endpoint?
Ad esempio con l'API Blizzard:
WowEndpoints := [...]string{"achievements", "realm"}
Bliz := &Blizzard{
Url: "https://us.api.battle.net/wow",
Params: ReqParams,
Client: BClient,
Endpoints: WowEndpoints,
}
// build the realm status request.
req, err := http.NewRequest("GET", fmt.Sprintf("%s/%s/status", Bliz.Url, Bliz.Endpoints[1]), nil)
Se guardi Bliz.Url
, non vi è alcuna barra finale nell'URL di primo livello. Normalmente, aggiungo le barre quando si formattano gli endpoint dell'API come se fosse una struttura di cartelle, come puoi vedere quando eseguo l'operazione fmt.Sprintf
.
Non sono sicuro di dove ho preso questa abitudine, ma volevo vedere se esisteva un metodo consigliato o preferito per creare endpoint di URL per le API.