我开始学习Golang,我想知道如何通过调用url获得json响应,如果您能给我一个例子,那么对指导自己来说将是很棒的。
我会写一些辅助函数来做到这一点:
// getJSON fetches the contents of the given URL // and decodes it as JSON into the given result, // which should be a pointer to the expected data. func getJSON(url string, result interface{}) error { resp, err := http.Get(url) if err != nil { return fmt.Errorf("cannot fetch URL %q: %v", url, err) } defer resp.Body.Close() if resp.StatusCode != http.StatusOK { return fmt.Errorf("unexpected http GET status: %s", resp.Status) } // We could check the resulting content type // here if desired. err := json.NewDecoder(resp.Body).Decode(result) if err != nil { return fmt.Errorf("cannot decode JSON: %v", err) } return nil }
可以在这里找到完整的工作示例:http : //play.golang.org/p/b1WJb7MbQV