Как передать переменную flag в http.Get на Голанге - PullRequest
0 голосов
/ 06 апреля 2019

У меня есть блок кода, который жестко кодирует URL-адрес, необходимый для REST API, который я использую.Я хотел бы использовать два флага для динамической генерации URL.Например, что-то с эффектом:

response, err := http.Get("https://swapi.co/api/%s/1", resourcePtr)

Мой текущий код выглядит следующим образом:

func main() {

    resourcePtr := flag.String("resource", "", "a string")
    idPtr := flag.Int("id", 1, "an int")

    flag.Parse()

    response, err := http.Get("https://swapi.co/api/planets/1")
    if err != nil {
        fmt.Printf("HTTP request failed with error %s\n", err)
    } else {
        data, _ := ioutil.ReadAll(response.Body)
        fmt.Println(string(data))
    }

}

Заранее спасибо!

1 Ответ

1 голос
/ 06 апреля 2019

Вот для чего fmt.Sprintf (https://golang.org/pkg/fmt/#Sprintf).

response, err := http.Get(fmt.Sprintf("https://swapi.co/api/%s/1", resourcePtr))
...