如何将标志变量传递到 http 中.进入戈朗

  • 本文关键字:http 标志 变量 go flags
  • 更新时间 :
  • 英文 :


我有一个代码块,它对我正在使用的 REST API 所需的 URL 进行硬编码。我想做的是,使用这两个标志动态生成 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 %sn", err)
    } else {
        data, _ := ioutil.ReadAll(response.Body)
        fmt.Println(string(data))
    }
}

提前感谢!

这就是

fmt.Sprintf(https://golang.org/pkg/fmt/#Sprintf(的用途。

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