@@ -173,7 +173,7 @@ def read_line
173
173
read_line? or raise EOFError
174
174
end
175
175
176
- def read_request
176
+ def read_request_line
177
177
return unless line = read_line?
178
178
179
179
if match = line . match ( REQUEST_LINE )
@@ -182,6 +182,13 @@ def read_request
182
182
raise InvalidRequest , line . inspect
183
183
end
184
184
185
+ return method , path , version
186
+ end
187
+
188
+ def read_request
189
+ method , path , version = read_request_line
190
+ return unless method
191
+
185
192
headers = read_headers
186
193
187
194
@persistent = persistent? ( version , method , headers )
@@ -193,11 +200,17 @@ def read_request
193
200
return headers . delete ( HOST ) , method , path , version , headers , body
194
201
end
195
202
196
- def read_response ( method )
203
+ def read_status_line
197
204
version , status , reason = read_line . split ( /\s +/ , 3 )
198
205
199
206
status = Integer ( status )
200
207
208
+ return version , status , reason
209
+ end
210
+
211
+ def read_response ( method )
212
+ version , status , reason = read_status_line
213
+
201
214
headers = read_headers
202
215
203
216
@persistent = persistent? ( version , method , headers )
0 commit comments