Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- if ($this->getStatusCode() == 401)
- $this->setHeader('WWW-Authenticate', 'basic');
- <?xml version="1.0"?>
- <config xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="urn:magento:framework:ObjectManager/etc/config.xsd">
- <preference for="MagentoFrameworkWebapiRestResponse" type="SduRewriterRestResponse" />
- </config>
- <?php
- namespace SduRewriterRest;
- class Response extends MagentoFrameworkWebapiRestResponse
- {
- public function _renderMessages()
- {
- $responseHttpCode = null;
- /** @var Exception $exception */
- foreach ($this->getException() as $exception) {
- $maskedException = $this->_errorProcessor->maskException($exception);
- $messageData = [
- 'message' => $maskedException->getMessage(),
- ];
- if ($maskedException->getErrors()) {
- $messageData['errors'] = [];
- foreach ($maskedException->getErrors() as $errorMessage) {
- $errorData['message'] = $errorMessage->getRawMessage();
- $errorData['parameters'] = $errorMessage->getParameters();
- $messageData['errors'][] = $errorData;
- }
- }
- if ($maskedException->getCode()) {
- $messageData['code'] = $maskedException->getCode();
- }
- if ($maskedException->getDetails()) {
- $messageData['parameters'] = $maskedException->getDetails();
- }
- if ($this->_appState->getMode() == MagentoFrameworkAppState::MODE_DEVELOPER) {
- $messageData['trace'] = $exception instanceof MagentoFrameworkWebapiException
- ? $exception->getStackTrace()
- : $exception->getTraceAsString();
- }
- $responseHttpCode = $maskedException->getHttpCode();
- }
- // set HTTP code of the last error, Content-Type, and all rendered error messages to body
- $this->setHttpResponseCode($responseHttpCode);
- $this->setMimeType($this->_renderer->getMimeType());
- if ($this->getStatusCode() == 401)
- $this->setHeader('WWW-Authenticate', 'basic');
- $this->setBody($this->_renderer->render($messageData));
- return $this;
- }
- }
Add Comment
Please, Sign In to add comment