服务器返回text / html标头而不是application / json标头

时间:2013-11-13 07:34:53

标签: json ubuntu zend-framework2 restful-architecture

我在ZF2中编写了RESTful服务。它在我的本地窗口wamp中正常工作。它在Ubuntu服务器中返回text / html而不是application / json标头。任何的想法?

1 个答案:

答案 0 :(得分:3)

从控制器返回带有application/json标头的JSON格式输出的最佳方法是在应用程序配置的view_manager部分配置中启用 JsonStrategy

为此,请打开module/Application/config/module.config.php文件并:

return array(
 ...
    'view_manager' => array(
        //...
        'strategies' => array(
            'ViewJsonStrategy',
        ),
        //...
    ),
 ...
);

在要返回JSON响应的控制器中:

<?php

namespace Application\Controller;

use Zend\View\Model\JsonModel; // Notice this line

class YourController extends AbstractActionController
{
    public function exampleAction() {
        $data = array('foo' => 'bar');
        return new JsonModel($data);
    }
}

希望它有所帮助!