来自grunt-connect-proxy插件的POST请求不包含数据

时间:2014-05-21 13:28:54

标签: php angularjs post gruntjs

到目前为止,Angular可以向我本地运行的Apache服务器发出POST请求。从该服务器,我返回一个Symfony JsonResponse对象:

$http.post("/api", {"foo":"bar"})
          .success(function(data, status, headers, config) {
              $scope.data = data;
              console.log(data);
          }).error(function(data, status, headers, config) {
              $scope.status = status;
          });

现在我坚持认为它只返回[]。如果我返回一个硬编码的关联数组,它就可以工作。

可能是什么问题? (plugin

2 个答案:

答案 0 :(得分:2)

如果您获得[]成功数据,这意味着您的服务器提供空响应,认为仍然是有效响应。尝试在浏览器中运行您的API(或者更好地使用Chrome中的POSTMAN插件)来检查相同的API调用是否正在返回[]作为回复。

答案 1 :(得分:1)

好的,解决方法是检查content_type:application/json,因为如果设置了$ _POST将不会被填充。 Angular会自动执行此操作。

如果您不知道这一点,它正在寻找大海捞针。 在这方面,this post非常有帮助。然后我偶然发现this page

这条线做到了

if(0 === strpos($request->headers->get('CONTENT_TYPE'), 'application/json')){