0

I am having the controller which is responding with resultJson(\Magento\Framework\Controller\Result\JsonFactory), I have given setData. And I need to set header as JSON. I want the JSON result in the tree(PRETTY) format. Kindly help me.

This is my code:

\Magento\Framework\Controller\Result\JsonFactory $resultJsonFactory,
.
.
$resultJson = $this->_resultJsonFactory->create();
.
.
$resultJson->setHeader('Content-type', 'application/json',true);
$resultJson->setData(["view_url"=> "/","results"=>$results]);

return $resultJson;

which is resulting with:

{"view_url":"\/","results":[{"product_image":"\/p11.jpg","product_name":"name1","product_desc":"protection.","absorbency":"hik","special_size":"Yes","product_url":"\/"},{"product_image":"\/p1.jpg","product_name":"name2","product_desc":" protection.","absorbency":"high","special_size":"No","product_url":"\/"}]}

But i need like this: (with response header as JSON)

{
  "view_url": "/",
  "results": [
    {
      "product_image": "/p11.jpg",
      "product_name": "name1",
      "product_desc": "protection.",
      "absorbency": "hik",
      "special_size": "Yes",
      "product_url": "/"
    },
    {
      "product_image": "/p1.jpg",
      "product_name": "name2",
      "product_desc": " protection.",
      "absorbency": "high",
      "special_size": "No",
      "product_url": "/"
    }
  ]
}
  • Could you please more clarify what is your current result and what is your expected. – Hitesh Agrawal Mar 4 at 5:56
0

After looking at your JSON response I don't see any issue. Validated here.

I don't think you will see any issue in decoding this response if you wanna read it further because format is valid.

If you wanna see it beautiful in your browser then you can use browser extension. I use Chrome Extension JSONView. Check here.

Hope this is helpful. Cheers!

| improve this answer | |

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.