Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/ajax/6.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
jQuery$.post和cakePHP控制器发出400个错误请求_Jquery_Ajax_Cakephp_Post - Fatal编程技术网

jQuery$.post和cakePHP控制器发出400个错误请求

jQuery$.post和cakePHP控制器发出400个错误请求,jquery,ajax,cakephp,post,Jquery,Ajax,Cakephp,Post,我试图使用$.post()从cakePHP控制器检索json数组。我想我不需要一个视图文件,因为我会将autorender设置为false,并且我需要一个json数组。当我使用$.ajax和$.get时,我设法得到一个响应,但是使用$.post我得到了一个400个错误的请求 我的代码: $.post("controller/action",{id: "1"}, function(data) { console.log(data); }); public function actio

我试图使用$.post()从cakePHP控制器检索json数组。我想我不需要一个视图文件,因为我会将autorender设置为false,并且我需要一个json数组。当我使用$.ajax和$.get时,我设法得到一个响应,但是使用$.post我得到了一个400个错误的请求

我的代码:

$.post("controller/action",{id: "1"}, function(data) {
      console.log(data);
});

public function action() {
      $this->autoRender = false;
      $array = $_POST;
      header("Content-type: application/json");
      echo json_encode($array);
      exit;
}

关于如何做得更好,有什么帮助或提示吗?正如前面提到的$.get,$.ajax可以工作,但是数据回调不会返回任何东西(但是firebug显示了响应数组)

我看到的一个错误是,没有迹象表明需要json输出

$.post("controller/action",{id: "1"}, function(data) {
      console.log(data);
},"json");

这可能只是你的问题中的一个输入错误,但是
$。post
应该用
关闭,我当然不是cakePHP专家-但我非常确定
exit()
不应该在那里