sumitasok
10/3/2014 - 6:17 AM

Send and Get Json in Go lang

Send and Get Json in Go lang

		str := fmt.Sprintf(`{"key": "%s", "message": {"html": "%s", "text": "%s", "subject": "%s", "from_email": "%s", "from_name": "%s", "to": [ { "email": "%s", "name": "%s", "type": "%s" }]}}`,
			s.Key,
			s.Message.Html,
			s.Message.Text,
			s.Message.Subject,
			s.Message.FromEmail,
			s.Message.FromName,
			s.Message.To[i].Email,
			s.Message.To[i].Name,
			s.Message.To[i].RType)
		var jsonStr = []byte(str)

		req, err := http.NewRequest("POST", m.URL("messages/send"), bytes.NewBuffer(jsonStr))
		req.Header.Set("X-Custom-Header", "myvalue")
		req.Header.Set("Content-Type", "application/json")

		client := &http.Client{}
		resp, err := client.Do(req)
		if err != nil {
			panic(err)
		}
		defer resp.Body.Close()

		if err != nil {
			fmt.Println(err.Error())
		} else {
			content, _ := ioutil.ReadAll(resp.Body)
			fmt.Println(string(content))
		}