示例#1
0
 public function parseHttpRequest(ServerHttpRequest $httpRequest, array $attributes) : RequestInterface
 {
     $rpHelper = new HttpRequestParserHelper($httpRequest);
     $filter = $rpHelper->getFilter();
     $this->helper->addPathFilter($filter, 'path');
     $this->helper->addFileNameFilter($filter, 'filename');
     $validator = $rpHelper->getValidator();
     $this->helper->addFullPathValidator($validator, 'path');
     $this->helper->addFileNameValidator($validator, 'filename');
     $data = ['path' => $attributes['path'], 'filename' => $httpRequest->getParsedBody()['filename']];
     return new Request(self::MESSAGE, $rpHelper->filterAndValidate($data), $httpRequest);
 }