Last Updated: September 29, 2021
·
608
· dylanlukes

Magento: JSON Routes

To respond to a route (assuming you have the controller set up already) with JSON:

public function foobarAction {
 $obj = getSomeObjectOrSimpleXML();
 Mage::app()->getResponse()
 ->setHeader('Content-Type', 'application/json', true)
 ->setBody(Mage::helper('core')->jsonEncode($obj));
}

Make sure you include the final parameter to setHeader. While not completely necessary, it ensures that we overwrite any previously set Content-Type.