11/*
2- angular-file-upload v1.1.3
2+ angular-file-upload v1.1.4
33 https://github.com/nervgh/angular-file-upload
44*/
55( function ( angular , factory ) {
@@ -400,12 +400,14 @@ module
400400 /**
401401 * Transforms the server response
402402 * @param {* } response
403+ * @param {Object } headers
403404 * @returns {* }
404405 * @private
405406 */
406- FileUploader . prototype . _transformResponse = function ( response ) {
407+ FileUploader . prototype . _transformResponse = function ( response , headers ) {
408+ var headersGetter = this . _headersGetter ( headers ) ;
407409 angular . forEach ( $http . defaults . transformResponse , function ( transformFn ) {
408- response = transformFn ( response ) ;
410+ response = transformFn ( response , headersGetter ) ;
409411 } ) ;
410412 return response ;
411413 } ;
@@ -433,6 +435,20 @@ module
433435
434436 return parsed ;
435437 } ;
438+ /**
439+ * Returns function that returns headers
440+ * @param {Object } parsedHeaders
441+ * @returns {Function }
442+ * @private
443+ */
444+ FileUploader . prototype . _headersGetter = function ( parsedHeaders ) {
445+ return function ( name ) {
446+ if ( name ) {
447+ return parsedHeaders [ name . toLowerCase ( ) ] || null ;
448+ }
449+ return parsedHeaders ;
450+ } ;
451+ } ;
436452 /**
437453 * The XMLHttpRequest transport
438454 * @param {FileItem } item
@@ -460,7 +476,7 @@ module
460476
461477 xhr . onload = function ( ) {
462478 var headers = that . _parseHeaders ( xhr . getAllResponseHeaders ( ) ) ;
463- var response = that . _transformResponse ( xhr . response ) ;
479+ var response = that . _transformResponse ( xhr . response , headers ) ;
464480 var gist = that . _isSuccessCode ( xhr . status ) ? 'Success' : 'Error' ;
465481 var method = '_on' + gist + 'Item' ;
466482 that [ method ] ( item , response , xhr . status , headers ) ;
@@ -469,14 +485,14 @@ module
469485
470486 xhr . onerror = function ( ) {
471487 var headers = that . _parseHeaders ( xhr . getAllResponseHeaders ( ) ) ;
472- var response = that . _transformResponse ( xhr . response ) ;
488+ var response = that . _transformResponse ( xhr . response , headers ) ;
473489 that . _onErrorItem ( item , response , xhr . status , headers ) ;
474490 that . _onCompleteItem ( item , response , xhr . status , headers ) ;
475491 } ;
476492
477493 xhr . onabort = function ( ) {
478494 var headers = that . _parseHeaders ( xhr . getAllResponseHeaders ( ) ) ;
479- var response = that . _transformResponse ( xhr . response ) ;
495+ var response = that . _transformResponse ( xhr . response , headers ) ;
480496 that . _onCancelItem ( item , response , xhr . status , headers ) ;
481497 that . _onCompleteItem ( item , response , xhr . status , headers ) ;
482498 } ;
@@ -542,8 +558,8 @@ module
542558 } catch ( e ) { }
543559
544560 var xhr = { response : html , status : 200 , dummy : true } ;
545- var response = that . _transformResponse ( xhr . response ) ;
546561 var headers = { } ;
562+ var response = that . _transformResponse ( xhr . response , headers ) ;
547563
548564 that . _onSuccessItem ( item , response , xhr . status , headers ) ;
549565 that . _onCompleteItem ( item , response , xhr . status , headers ) ;
0 commit comments