null ref fixed

This commit is contained in:
Vladimir Enchev
2016-03-11 15:23:46 +02:00
parent 1663cf278d
commit 2c60bfbafc
2 changed files with 23 additions and 7 deletions

View File

@@ -110,6 +110,17 @@ export var test_XMLHttpRequest_headersSentAndReceivedProperly = function (done)
// </snippet> // </snippet>
}; };
export var test_XMLHttpRequest_setResponseTypeShouldNotThrow = function (done) {
try {
var xhr = new XMLHttpRequest();
(<any>xhr)._setResponseType();
done(null);
}
catch (err) {
done(err);
}
};
export var test_XMLHttpRequest_contentSentAndReceivedProperly = function (done) { export var test_XMLHttpRequest_contentSentAndReceivedProperly = function (done) {
// <snippet module="xhr" title="xhr"> // <snippet module="xhr" title="xhr">
// ### Send/receive JSON // ### Send/receive JSON

View File

@@ -116,13 +116,18 @@ export class XMLHttpRequest {
} }
private _setResponseType() { private _setResponseType() {
const contentType = this.getResponseHeader('Content-Type').toLowerCase(); const header = this.getResponseHeader('Content-Type');
const contentType = header && header.toLowerCase();
if (contentType) {
if (contentType.indexOf('application/json') >= 0) { if (contentType.indexOf('application/json') >= 0) {
this.responseType = XMLHttpRequestResponseType.json; this.responseType = XMLHttpRequestResponseType.json;
} else if (contentType.indexOf('text/plain') >= 0) { } else if (contentType.indexOf('text/plain') >= 0) {
this.responseType = XMLHttpRequestResponseType.text; this.responseType = XMLHttpRequestResponseType.text;
} }
} else {
this.responseType = XMLHttpRequestResponseType.text;
}
} }
private _listeners: Map<string, Array<Function>> = new Map<string, Array<Function>>(); private _listeners: Map<string, Array<Function>> = new Map<string, Array<Function>>();