$ http和$ q有什么区别?

J R*_*Rod 6 angularjs angular-http angular-services angular-promise

  • a)$http和之间有什么区别$q
  • b)什么时候应该$q实施$http,反之亦然?
  • c)在和实施最佳做法$http,并$q在同一时间?

Mar*_*kus 8

a)$http以异步方式执行HTTP请求,这意味着您无法确定从服务器获得答案的时间.$q是一种服务,它使您能够一个接一个地执行多个异步任务.话虽如此,他们在概念上确实没有任何共同之处.

b)考虑一种情况,您希望对服务器进行多次异步HTTP调用.您可以嵌套每个调用(例如,在第一次调用的成功回调中进行第二次调用).但是,您会发现自己遇到了各种不同的呼叫.然后,您将$q用于规避嵌套代码.

c)每当你有一个HTTP呼叫时,你应该使用$http.每当你有很多电话时,你应该使用$q.