func()

in golang/go-guestbook/src/frontend/main.go [143:162]


func (f *frontendServer) saveMessage(author, message string) error {
	entry := guestbookEntry{
		Author:  author,
		Message: message,
	}
	body, err := json.Marshal(entry)
	if err != nil {
		return fmt.Errorf("failed to serialize message into json: %+v", err)
	}

	resp, err := http.Post(fmt.Sprintf("http://%s/messages", f.backendAddr), "application/json", bytes.NewReader(body))
	if err != nil {
		return fmt.Errorf("backend returned failure: %+v", err)
	}
	if resp.StatusCode != http.StatusOK {
		return fmt.Errorf("unexpected status code from backend: %d %v", resp.StatusCode, resp.Status)
	}
	defer resp.Body.Close()
	return nil
}