2015-05-28 14 views
5
  • a) Quali sono le differenze tra $http e $q?
  • b) Quando è necessario implementare $q su $http e viceversa?
  • c) Quando e le migliori pratiche per l'attrezzo $http e $q allo stesso tempo?
+2

Uno è la libreria http, l'altro - una libreria di promessa. '$ http' usa' $ q' sotto. –

+1

(a) Nutshell: tutto, (b) vedi (a) –

risposta

5

a) $http esegue le richieste HTTP in modo asincrono, il che significa che non si può essere sicuri circa il momento in cui si otterrà una risposta dal server. $q è un servizio che offre la possibilità di eseguire più attività asincrone una dopo l'altra. Detto questo, non hanno nulla in comune.

b) Si consideri una situazione in cui si desidera avere più chiamate HTTP asincrone a un server. Potresti avere la possibilità di annidare ciascuna di queste chiamate (ad esempio effettuare la seconda chiamata nella callback di successo della prima chiamata). Tuttavia ti trovi in ​​situazioni in cui hai diverse quantità di chiamate. Dovresti quindi utilizzare $q per aggirare il codice di nidificazione.

c) Ogni volta che si dispone di una singola chiamata HTTP, è necessario utilizzare $http. Ogni volta che si hanno numerose chiamate, è necessario utilizzare $q.

1

a)

$ http = servizio angolare per accedere a un server tramite il protocollo http.

$ q = servizio angolare implementazione libreria kris kowalkis q https://github.com/kriskowal/q. Sono entrambi servizi angolari ma non hanno nient'altro in comune.

b)

$ HTTP utilizza $ q per fornire l'accesso defered (promesse). Ma non conosco nessuna situazione in cui vorrei usare $ q su $ http. Per quanto tu voglia fare richieste http.

c)

$ http utilizza $ q. Quindi sono sempre usati insieme. Finché vuoi fare richieste http.