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": "/"
    }
  ]
}

没有正确的解决方案

其他提示

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!

许可以下: CC-BY-SA归因
scroll top