使用CakePhp发送数据的REST响应

时间:2015-09-11 17:39:06

标签: php angularjs rest cakephp

您好我正在建设的服务有问题。现在我可以在json和所有内容中看到响应的主体。但是使用$http.get('url');获得角度响应的朋友似乎很难获得数据。我不熟悉角度,所以我不确定这个电话是如何工作的,我不知道为什么他不能得到我送他的数据。这是代码:

                    $jsonResponse = array(
                        'success' => 'Llamada exitosa.',
                        'producto' => $responseproducts
                    );

                    $this->response->type('json');

                    $this->set('data', $jsonResponse);
                    $this->set('_serialize', 'data');

                    $json = json_encode($jsonResponse);
                    $this->response->body($json);

$responseproducts是我想让他得到的回应的数组。当我在邮递员上尝试时,URL会返回正文中的数组。我可以使用ajax上的数据构建在一个简单的html上,看看我是否可以使用url。但由于某种原因,我的朋友无法获得响应数据的数组。我有什么想法可能做错了吗?

1 个答案:

答案 0 :(得分:1)

呵呵我找到了答案。进一步挖掘,似乎他的CORS可用性存在问题。我只是使用我发现的下一个代码让CORS服务于我的服务:

//Enabling CORS for CakePHP
    public function beforeFilter() {
        parent::beforeFilter();
            $this->response->header('Access-Control-Allow-Origin','*');
            $this->response->header('Access-Control-Allow-Methods','*');
            $this->response->header('Access-Control-Allow-Headers','X-Requested-With');
            $this->response->header('Access-Control-Allow-Headers','Content-Type, x-xsrf-token');
            $this->response->header('Access-Control-Max-Age','172800');
    }

当我在找到此代码的页面上阅读时,并非所有5都是必需的。大部分时间它只适用于第一个,但必要时测试其余部分。希望这有助于soemone:P