Avatar ·

Como definir várias tags para campos de struct em Go?

Olá a todos! Comecei a estudar Go recentemente e me deparei com um problema ao trabalhar com structs e JSON. Tenho uma struct que descreve um usuário. Quero que, ao serializar para JSON, o campo `Name` seja exibido como `"full_name"`, e ao desserializar de JSON (por exemplo, de uma API externa), também aceite o campo `"username"`. Mas não consigo entender como definir várias tags para um único campo. Aqui está um exemplo do meu código: ```go type User struct { Name string `json:"full_name"` Age int `json:"age"` } ``` Tentei escrever algo como `Name string json:"full_name" json:"username"`, mas o compilador reclama de tags repetidas. Depois li que é possível usar crases e separar tags com espaços: `Name string json:"full_name" xml:"name"`, mas são formatos diferentes, e eu preciso de várias opções de nome especificamente para JSON. Alguém pode me dizer como definir várias tags para um único campo de struct em Go? Existe algum mecanismo embutido ou preciso usar algo diferente?