【问题标题】:Http post returns no respose and there is no error in the request in angular js?Http post没有返回响应并且angular js中的请求没有错误?
【发布时间】:2015-07-20 11:00:35
【问题描述】:

我的任务是创建基本的 CRUD 应用程序。 我正在尝试使用http post插入文本,但成功方法中没有数据。

   $http({
    url: url,
    method: "POST",
   dataType: 'json',
    data: {  
                   Id: '201414',
                   Note: 'sample',
                           },
    headers: { 'Content-Type': 'application/json; charset=UTF-8' } 

})
. success(function(response) {
       console.log(response); //Returns Empty
} );

我做错了什么?

【问题讨论】:

  • 检查你的服务器方法是否返回了一些东西。
  • 你的服务器端部分呢? POST请求的内容是什么?如果您使用的是 PHP,您可以通过 var_dump( $_POST ); 看到它
  • 在服务器端调试并尝试先传递虚拟数据,然后使用您的正版代码结帐。

标签: javascript angularjs http-post


【解决方案1】:

如果服务器方法应该返回一个值但没有返回,则可能是服务器端发生了错误。但是,此错误不会作为参数传递给成功处理程序,也不会在请求中引发错误。

您可以通过将错误处理程序附加到$http 调用来确定是否发生了错误。

尝试以下方法:

$http({
    url: url,
    method: 'POST',
    data: {  
        Id: '201414',
        Note: 'sample'
    }
})
.success((data, status, headers, config) {
    console.log(status);
})
.error(function(data, status, headers, config) {
    console.log(data); 
});

【讨论】:

  • 没有错误。 api 描述体参数-string。可能是我传递数据的方式不对?
  • 根据文档,没有要设置的 dataType 属性,POST 请求的默认标头已经是“application/json”。试试我更新的答案。
  • 试过还是什么都没有:这里是 config.header - Accept: "application/json, text/plain, /"Content-Type: "application/json; charset= UTF-8"
  • 我扩展了成功回调。看看服务器返回了什么。如果成功回调,则响应正常,但服务器没有返回任何内容(或者不是正确的 JSON 格式)。尝试返回一些虚拟数据以进行调试。
  • 我没有服务器访问权限
猜你喜欢
  • 1970-01-01
  • 2021-07-31
  • 1970-01-01
  • 2018-01-01
  • 1970-01-01
  • 2022-06-30
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多