如何在CakePHP中测试JSON数据视图的输出?



所以我试图创建一个Android移动应用程序,我使用CakePHP作为我的服务器端。我将不需要任何HTML视图,我将只响应JSON对象。

我已经看了一下http://book.cakephp.org/2.0/en/core-libraries/components/request-handling.html#RequestHandlerComponent,然后我创建了这个:

class LocationsController extends AppController
{
    public $helpers = array('Html', 'Form');
    public $components = array('RequestHandler');
    function index()
    {
        $locations = $this->Location->getNearest();
        $this->set(compact('locations'));
        $this->set('_serialize', array('locations'));
    }
}

,我已经把这个添加到我的routes.php:

Router::mapResources('locations');
Router::parseExtensions('json');

当我运行这除了默认的CakePHP布局风格什么都没有显示。如果我去掉索引。ctp视图文件,我得到一个错误,它找不到视图文件。为什么还需要视图文件?我认为序列化方法不需要视图。我试着在谷歌Chrome开发人员控制台寻找,没有响应,包含JSON对象。然而,MySQL执行得非常好。

$this->render(false);放在

public $components = array('RequestHandler');

function index()

现在不需要索引了。CTP文件。

我只是做了同样的事情,使用REST API,因为我想要JSON中的响应。我所做的是使用Chrome高级休息客户端。其中,我使用适当的GET方法向本地主机服务器发出请求,并且成功了。

like: GET /users/view/103.json

您将得到如下响应:

{"users":{"User":{"id":"103","username":"abc","password":"xyz",
 "email-id":"abc@xyz.com"}}} 

相关内容

  • 没有找到相关文章

最新更新