Fixed README.md
`ErrEmpty` was not declared
For some reason io.writer and io.reader was used instead of http request and response bodies. I had to check against the example source code to find out why the README code wasn't working.
John Nguyen
8 years ago
55 | 55 | func (stringService) Count(s string) int { |
56 | 56 | return len(s) |
57 | 57 | } |
58 | ||
59 | // ErrEmpty is returned when input string is empty | |
60 | var ErrEmpty = errors.New("Empty string") | |
58 | 61 | ``` |
59 | 62 | |
60 | 63 | ### Requests and responses |
147 | 150 | uppercaseHandler := httptransport.Server{ |
148 | 151 | Context: ctx, |
149 | 152 | Endpoint: makeUppercaseEndpoint(svc), |
150 | DecodeFunc: decodeUppercaseRequest, | |
151 | EncodeFunc: encodeResponse, | |
153 | DecodeRequestFunc: decodeUppercaseRequest, | |
154 | EncodeResponseFunc: encodeResponse, | |
152 | 155 | } |
153 | 156 | |
154 | 157 | countHandler := httptransport.Server{ |
155 | 158 | Context: ctx, |
156 | 159 | Endpoint: makeCountEndpoint(svc), |
157 | DecodeFunc: decodeCountRequest, | |
158 | EncodeFunc: encodeResponse, | |
160 | DecodeRequestFunc: decodeCountRequest, | |
161 | EncodeResponseFunc: encodeResponse, | |
159 | 162 | } |
160 | 163 | |
161 | 164 | http.Handle("/uppercase", uppercaseHandler) |
163 | 166 | log.Fatal(http.ListenAndServe(":8080", nil)) |
164 | 167 | } |
165 | 168 | |
166 | func decodeUppercaseRequest(r io.Reader) (interface{}, error) { | |
169 | func decodeUppercaseRequest(r *http.Request) (interface{}, error) { | |
167 | 170 | var request uppercaseRequest |
168 | if err := json.NewDecoder(r).Decode(&request); err != nil { | |
171 | if err := json.NewDecoder(r.Body).Decode(&request); err != nil { | |
169 | 172 | return nil, err |
170 | 173 | } |
171 | 174 | return request, nil |
172 | 175 | } |
173 | 176 | |
174 | func decodeCountRequest(r io.Reader) (interface{}, error) { | |
177 | func decodeCountRequest(r *http.Request) (interface{}, error) { | |
175 | 178 | var request countRequest |
176 | if err := json.NewDecoder(r).Decode(&request); err != nil { | |
179 | if err := json.NewDecoder(r.Body).Decode(&request); err != nil { | |
177 | 180 | return nil, err |
178 | 181 | } |
179 | 182 | return request, nil |
180 | 183 | } |
181 | 184 | |
182 | func encodeResponse(w io.Writer, response interface{}) error { | |
185 | func encodeResponse(w http.ResponseWritererr, response interface{}) error { | |
183 | 186 | return json.NewEncoder(w).Encode(response) |
184 | 187 | } |
185 | 188 | ``` |