Restful icon indicating copy to clipboard operation
Restful copied to clipboard

Insufficient creation of HttpRequest in Nette 2.3

Open janedbal opened this issue 9 years ago • 1 comments

Due to this commit, getRawBody() will always return NULL, because in ApiRequestFactory there is no callback passed. Possible quickfix:

    public function createHttpRequest()
    {
        $request = $this->factory->createHttpRequest();
        $url = $request->getUrl();
        $url->setQuery($request->getQuery());

        $rawBodyCallback = function() use ($request) {
            return $request->getRawBody();
        };

        return new Request(
            $url, NULL, $request->getPost(), $request->getFiles(), $request->getCookies(), $request->getHeaders(),
            $this->getPreferredMethod($request), $request->getRemoteAddress(), $request->getRemoteHost(), $rawBodyCallback
        );
    }

janedbal avatar Feb 26 '15 16:02 janedbal

And just a note, if you would drop support for method overriding via __method query parameter, whole ApiRequestFactory is not needed :)

janedbal avatar Feb 26 '15 16:02 janedbal