我正在尝试为CakePHP中内置的API启用CORS,以便可以使用AppController中的以下内容访问所有请求:
public function beforeFilter()
{
header("Access-Control-Allow-Origin: *");
}
Run Code Online (Sandbox Code Playgroud)
这是在错误的地方吗?由于请求仍然被阻止.
更新:事实上这似乎确实有效,但因为我做的事情如下:
header('Content-Type: application/json');
echo json_encode(array('message'=>'Hello world!'));
Run Code Online (Sandbox Code Playgroud)
在我的一些方法中,它表现为好像它覆盖了标头设置AppController,所以它没有出现在JSON调用的响应中.有任何想法吗?
更新2:如下所示返回JSON,修复了问题:
$this->response->type('json');
$this->response->body(json_encode(array('message'=>'Hello world!')));
Run Code Online (Sandbox Code Playgroud)
显然header()在Cake中使用打破以前的标题?