commit
This commit is contained in:
parent
70e2f7a8aa
commit
008d2f30d7
675 changed files with 189892 additions and 0 deletions
55
node_modules/xhr-status/index.js
generated
vendored
Normal file
55
node_modules/xhr-status/index.js
generated
vendored
Normal file
|
@ -0,0 +1,55 @@
|
|||
'use strict';
|
||||
|
||||
/**
|
||||
* Get the correct status code for a given XHR request.
|
||||
*
|
||||
* @param {XHR} xhr A XHR request who's status code needs to be retrieved.
|
||||
* @returns {Object}
|
||||
* @api public
|
||||
*/
|
||||
module.exports = function status(xhr) {
|
||||
var local = /^file:/.test(xhr.responseURL)
|
||||
, code = xhr.status
|
||||
, text = '';
|
||||
|
||||
//
|
||||
// Older version IE incorrectly return status code 1233 for requests that
|
||||
// respond with a 204 header.
|
||||
//
|
||||
// @see http://stackoverflow.com/q/10046972
|
||||
//
|
||||
if (1233 === code) return {
|
||||
error: false,
|
||||
text: 'OK',
|
||||
code: 204
|
||||
};
|
||||
|
||||
//
|
||||
// If you make a request with a file:// protocol it returns status code 0 by
|
||||
// default so we're going to assume 200 instead. But if you do a HTTP request
|
||||
// to dead server you will also get the same 0 response code in chrome. So
|
||||
// we're going to assume statusCode 200 for local files.
|
||||
//
|
||||
if (0 === code) return local ? {
|
||||
error: false,
|
||||
text: 'OK',
|
||||
code: 200
|
||||
} : {
|
||||
error: true,
|
||||
text: 'An unknown error occured',
|
||||
code: 0
|
||||
};
|
||||
|
||||
//
|
||||
// FireFox will throw an error when accessing the statusText on faulty
|
||||
// cross-domain requests.
|
||||
//
|
||||
try { text = xhr.statusText; }
|
||||
catch (e) {}
|
||||
|
||||
return {
|
||||
error: code >= 400,
|
||||
text: text,
|
||||
code: code
|
||||
};
|
||||
};
|
Loading…
Add table
Add a link
Reference in a new issue