【发布时间】:2018-06-25 17:51:50
【问题描述】:
在调用服务时,它使用 $http 方法调用 API。在同一个服务中,我想添加条件语句,它负责在不调用任何 API/URL 的情况下返回另一个成功或失败对象。 像这样的:
调用 someMethod()
{
if (statement true) { return httpResponseObject; }
否则{ 返回响应对象; }
}
else部分我需要以这种方式返回对象responseObject,以便它可以调用将someMethod()作为服务调用的方法的错误块。
我试过return false;,return -1;,它不起作用。另外,我尝试使用XMLHttpRequest 的ResponseText,但没有奏效。
任何帮助,如何创建一个 HTTPResponse 对象,该对象可以以与 $Http 响应对象返回的相同方式使用。类似于附加快照:
【问题讨论】:
-
您需要显示更多(实际)代码,因为您对问题的描述不清楚
-
@JaromandaX :我需要创建一个响应对象,就像 $http 响应返回的那样,但不以编程方式调用任何 API/URL。
-
听起来过于复杂,但由于您还没有展示此功能将如何使用,所以目前还不清楚
-
如果你想伪造 $http 响应,你需要像 $http 一样返回Promise。这个承诺可以被解决也可以被拒绝。
-
使用
$q.resolve返回一个成功的promise。使用$q.reject返回一个被解析为rejected 的promise。有关详细信息,请参阅AngularJS $q Service API Reference
标签: angularjs angular-promise angularjs-http