55namespace Spiral \RoadRunner \Http ;
66
77use Generator ;
8- use RoadRunner \HTTP \DTO \V1BETA1 \FileUpload ;
9- use RoadRunner \HTTP \DTO \V1BETA1 \HeaderValue ;
10- use RoadRunner \HTTP \DTO \V1BETA1 \Request as RequestProto ;
11- use RoadRunner \HTTP \DTO \V1BETA1 \Response ;
8+ use RoadRunner \HTTP \DTO \V1 \HeaderValue ;
9+ use RoadRunner \HTTP \DTO \V1 \Request as RequestProto ;
10+ use RoadRunner \HTTP \DTO \V1 \Response ;
1211use Spiral \Goridge \Frame ;
1312use Spiral \RoadRunner \Http \Exception \StreamStoppedException ;
1413use Spiral \RoadRunner \Message \Command \StreamStop ;
@@ -175,21 +174,9 @@ private function arrayToRequest(string $body, array $context): Request
175174
176175 private function requestFromProto (string $ body , RequestProto $ message ): Request
177176 {
177+ /** @var UploadedFilesList $uploads */
178+ $ uploads = \json_decode ($ message ->getUploads (), true ) ?? [];
178179 $ headers = $ this ->headerValueToArray ($ message ->getHeader ());
179- $ uploadedFiles = [];
180-
181- /**
182- * @var FileUpload $uploads
183- */
184- foreach ($ message ->getUploads ()?->getList() ?? [] as $ uploads ) {
185- $ uploadedFiles [$ uploads ->getName ()] = [
186- 'name ' => $ uploads ->getName (),
187- 'mime ' => $ uploads ->getMime (),
188- 'size ' => (int ) $ uploads ->getSize (),
189- 'error ' => (int ) $ uploads ->getError (),
190- 'tmpName ' => $ uploads ->getTempFilename (),
191- ];
192- }
193180
194181 \parse_str ($ message ->getRawQuery (), $ query );
195182 /** @psalm-suppress ArgumentTypeCoercion, MixedArgumentTypeCoercion */
@@ -203,7 +190,7 @@ private function requestFromProto(string $body, RequestProto $message): Request
203190 static fn (array $ values ) => \implode (', ' , $ values ),
204191 $ this ->headerValueToArray ($ message ->getCookies ()),
205192 ),
206- uploads: $ uploadedFiles ,
193+ uploads: $ uploads ,
207194 attributes: [
208195 Request::PARSED_BODY_ATTRIBUTE_NAME => $ message ->getParsed (),
209196 ] + \iterator_to_array ($ message ->getAttributes ()),
0 commit comments