当前位置: 首页 > 知识库问答 >
问题:

AngularJS-超文本传输协议POST请求在发送JSON时获得"SynTaxError: Un预期令牌{"

丁文轩
2023-03-14

解决:问题在于我的php脚本中的第二个echo。不知什么原因,它把我的东西弄乱了。一旦我只留下第一个回声,一切似乎都很好。

我试图创建一个简单的post请求,将JSON对象添加到PHP脚本中。出于某种原因,我得到了“SyntaxError:Unexpected token{”,但我已经检查了我的JSON,它是有效的。我不确定这里发生了什么。如果有任何帮助,我将不胜感激。

app.factory('HttpRequestFactory', function($http, $q) {
  var HttpRequestFactory = {
    async: function() {
      var deferred = $q.defer();
      var myData = {"param1":"value1","param2":"value2","param3":"value3"};
      var url = '/test.php';
      $http({
          url:url,
          data : myData,
          method : 'POST'
      })
         .success(function (data, status, headers, config) {
            deferred.resolve(data);
         })
         .error(function(data, status, headers, config){
            deferred.reject("An error occured");
         });
      return deferred.promise;
    }
  };
  return HttpRequestFactory;
});

这是我的PHP代码。事实证明,如果我注释Echojson_encode($_POST);错误就消失了。

<?php
header('Content-Type: application/json');
    echo json_encode($_POST);
    $arr = array('a' => 1, 'b' => 2, 'c' => 3, 'd' => 4, 'e' => 5);
    echo json_encode($arr);
?>

共有1个答案

郭单鹗
2023-03-14

你在帖子请求中添加了标题吗?请看这篇文章:如何将数据作为表单数据而不是请求有效载荷发布?

$http({
    method: 'POST',
    url: url,
    data: xsrf,
    headers: {'Content-Type': 'application/x-www-form-urlencoded'}
})
 类似资料:
  • 我用Go编写了一个简单的服务器: 以及一个用Python编写的用于测试的简单客户端。以下是代码: 每次客户端访问服务器时,服务器都会产生这个错误: 我知道如何在Go中处理JSON Post请求 Python版本==3.4 Go版本==1.7 先谢谢你。

  • 我正在使用GWT和Spring controller来管理http流量。有些请求可能需要很长时间,但我希望在超过给定时间时终止请求。 我如何配置超时Spring。我也使用Apache Tomcat 7.0。我试图在tomcat上inrease最大线程,但有一段时间tomcat工作缓慢,因为请求线程不会死。

  • 我必须向一些没有任何参数的API发送GET请求,所以我编写了代码: 当API url是HTTP时,它可以工作,但不适用于HTTPS。它说: 太阳安全验证器。ValidatorException:PKIX路径生成失败:sun。安全供应商。certpath。SunCertPathBuilderException:找不到请求目标的有效证书路径;嵌套的异常是javax。网ssl。例外:太阳。安全验证器。V

  • 我有专有的基于http的API要从JMeter测试。不幸的是,API的一些endpoint希望http DELETE方法带有请求体(我知道它的API设计有问题,使用DELETE with request body,但我无法更改该API,需要对其进行测试)。 如何从JMeter测试它?似乎标准的HttpRequest采样器在没有任何警告的情况下默默忽略了我的身体有效载荷。(当我在《邮递员》中尝试它时

  • 我正在使用MEAN stack构建的SPA中实现fb身份验证。虽然我已经使用facebook token passport策略成功实现了fb身份验证,但我在保护APIendpoint方面遇到了问题。因为为此,我需要在$http服务中同时传递经过身份验证的用户对象和访问令牌,并且我已经尝试将访问令牌作为用户对象的属性和头属性传递,但仍然是401(未经授权的错误)。下面是我的代码片段。 护照留档显示“

  • 我有以下伪代码 我想要的是,我循环遍历一个对象数组,每个对象都获得相关的用户和产品,然后订阅用户和产品。我怎么能那样做?