Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/389.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
Javascript Angular$http.get报告200(正常),但响应从未更改_Javascript_Angularjs_Cordova_Http_Ionic Framework - Fatal编程技术网

Javascript Angular$http.get报告200(正常),但响应从未更改

Javascript Angular$http.get报告200(正常),但响应从未更改,javascript,angularjs,cordova,http,ionic-framework,Javascript,Angularjs,Cordova,Http,Ionic Framework,从Ionic和Angular应用程序向HTTP REST API发出get请求。在家庭网络上发出请求时,API接收并正确响应每个请求 但是,当我在4g数据连接上发出相同的请求时,只有第一个请求成功。在所有后续请求中,服务器从未接收到所述请求,但$http.get的行为就好像它接收到响应并报告状态代码为200。在这些情况下,“响应”与初始请求产生的响应从未发生变化 清除应用程序数据将重新启动此循环:清除成功后的第一个请求将重复该响应 这是发出GET请求的函数。res的内容显示在下面的屏幕截图中

从Ionic和Angular应用程序向HTTP REST API发出get请求。在家庭网络上发出请求时,API接收并正确响应每个请求

但是,当我在4g数据连接上发出相同的请求时,只有第一个请求成功。在所有后续请求中,服务器从未接收到所述请求,但$http.get的行为就好像它接收到响应并报告状态代码为200。在这些情况下,“响应”与初始请求产生的响应从未发生变化

清除应用程序数据将重新启动此循环:清除成功后的第一个请求将重复该响应

这是发出GET请求的函数。
res
的内容显示在下面的屏幕截图中

 this.getSongInfo = function() {
    return $http.get('http://REDACTED:8080/getName').then(function(res) {
      console.log(res);
      return res.data;
    }, function(err) {
      console.log(err);
      return false;
    });
  }

更新
莱克斯的回答起了作用。我没有意识到我不能向服务中注入$httpProvider。一旦我把它添加到app.config中,一切似乎都正常工作。仍然不确定为什么它只在数据连接上进行缓存,但是,我在angular文档中找不到任何东西可以说缓存是为数据连接启用的。

听起来好像响应被缓存在某个地方。当您希望相同的请求每次都返回相同的响应时,这很有用,但在您的情况下,这显然不是期望的行为。根据您提供的信息,无法知道是什么外部工具/设置导致响应被缓存。

听起来响应好像被缓存在某个地方。当您希望相同的请求每次都返回相同的响应时,这很有用,但在您的情况下,这显然不是期望的行为。根据您提供的信息,无法知道是什么外部工具/设置导致响应被缓存。

中所述的禁用缓存是否有任何效果?谢谢,这就解决了问题。我之前尝试过使用这个解决方案,但我没有意识到我不能在服务中使用$httpProvider。现在,我已经将它放在app.config中,它似乎按预期工作。@Lex,您应该回答您的评论中所述的禁用缓存是否有任何效果?谢谢,这样就完成了。我之前尝试过使用这个解决方案,但我没有意识到我不能在服务中使用$httpProvider。现在我已经把它放在app.config中了,它看起来像预期的那样工作。@Lex,你应该把你的评论作为一个答案