【问题标题】:how to return json response to my android app Cakephp如何将 json 响应返回到我的 android 应用程序 Cakephp
【发布时间】:2013-07-02 09:03:25
【问题描述】:

我正在开发 Cakephp 2.x ...我想用 json 中的 som 数据返回对我的 android 应用程序的响应 ..这是我的函数,我如何在我的 cakephp 网络中获得响应..

     public function phone(){
           $this->loadModel('User');

         if ($this->request->isPost()){

           $json = $this->request->data('json');
           $data = json_decode($json, TRUE);
        if($data){
      //here i want to send response back to mobile app  
          }
    }

我想在我的 json 响应中这样返回.. 我的意思是我想在 json 响应中发送变量名及其值

       [Contact] => Array
            (
                [idContacts] => 1
                [name] => asad
                [mobileNo] => 03224999464

【问题讨论】:

  • 为什么不使用文档中的 JsonView? book.cakephp.org/2.0/en/views/json-and-xml-views.html
  • @mark 不知道如何使用它们
  • 那里描述得很好。抱歉,但是在看到您提出很多这样的问题后,您看起来确实不想阅读,而是希望通过其他提供您可以复制和粘贴的代码来完成您的工作。如果您在使用编写良好的文档时遇到问题,您可能需要在继续编程之前解决该问题,因为使用文档是编程的重要组成部分。

标签: android json cakephp cakephp-2.0 cakephp-2.1


【解决方案1】:

这里描述了正确的 CakePHPish 方法。

http://book.cakephp.org/2.0/en/views/json-and-xml-views.html

答案 vom liyakat 有一些缺点。

它没有发送正确的标头,您在 URL 中没有 .json 扩展名(对于 json 恕我直言,您应该在那里),您不能使用 RequestHandler 的优势并为 json 和重用相同的操作非 json 视图。同样使用书中描述的方式,例如同时服务器 json 和 xml 很容易。

【讨论】:

    【解决方案2】:

    我猜你可以用 sample 来做 revert

    <?php
    $arr = array('a' => 1, 'b' => 2, 'c' => 3, 'd' => 4, 'e' => 5);
    
    echo json_encode($arr);
    ?>
    

    输出

    {"a":1,"b":2,"c":3,"d":4,"e":5}
    

    你也可以使用多维数组。

    如果我能帮助你更多,请告诉我。

    【讨论】:

    • 欢迎@hellosheikh,我很高兴为您提供帮助,请投票支持我的答案,以使其完全用于其他可能与未来相关的问题。
    • 如果使用那个(恕我直言,CakePHP 中的错误方法),您想在控制器中回显 json 后调用 $this->_stop()。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-06-29
    • 2013-08-22
    • 1970-01-01
    相关资源
    最近更新 更多