1
1
'use strict' ;
2
2
3
- function createXhr ( ) {
4
- return new window . XMLHttpRequest ( ) ;
3
+ function $xhrFactoryProvider ( ) {
4
+ this . $get = function ( ) {
5
+ return function createXhr ( method , url ) {
6
+ return new window . XMLHttpRequest ( ) ;
7
+ } ;
8
+ }
5
9
}
6
10
7
11
/**
@@ -21,8 +25,8 @@ function createXhr() {
21
25
* $httpBackend} which can be trained with responses.
22
26
*/
23
27
function $HttpBackendProvider ( ) {
24
- this . $get = [ '$browser' , '$window' , '$document' , function ( $browser , $window , $document ) {
25
- return createHttpBackend ( $browser , createXhr , $browser . defer , $window . angular . callbacks , $document [ 0 ] ) ;
28
+ this . $get = [ '$browser' , '$xhrFactory' , '$ window', '$document' , function ( $browser , $xhrFactory , $window , $document ) {
29
+ return createHttpBackend ( $browser , $xhrFactory , $browser . defer , $window . angular . callbacks , $document [ 0 ] , $xhrFactory ) ;
26
30
} ] ;
27
31
}
28
32
@@ -46,7 +50,7 @@ function createHttpBackend($browser, createXhr, $browserDefer, callbacks, rawDoc
46
50
} ) ;
47
51
} else {
48
52
49
- var xhr = createXhr ( ) ;
53
+ var xhr = createXhr ( method , url ) ; //we could add more arguments here, if needed
50
54
51
55
xhr . open ( method , url , true ) ;
52
56
forEach ( headers , function ( value , key ) {
0 commit comments