basic-browser-request
v10.0.2
Published
Yet another XHR abstraction. Supports canceling, JSON, and crude chunking.
Maintainers
Readme
basic-browser-request
Another lightweight wrapper around XHR that — according to me — does just enough. Supports chunking, canceling, and JSON.
Installation
npm install basic-browser-requestUsage
var request = require('basic-browser-request');
var requestHandle = request(
{
url: 'http://something.whatever/yeah',
method: 'GET',
mimeType: 'text/plain',
onData: function onData(data) {
console.log(data);
chunksReceived += 1;
}
},
done
);
function done(error, response, text) {
if (error) {
console.log(error);
}
else {
useCompleteDownloadedText(text);
}
}To cancel:
requestHandle.cancelRequest();If you don't specify a mimeType, it defaults to application/json and done() will be passed a parsed JSON object.
In the interest of sort-of compatibility with request, the callback will be passed three parameters:
- error: An error object, if there was an error while making the request.
- response: An object containing the
statusCode, thestatusMessage,rawResponse, andxhr: XMLHttpRequest.response. This is not at all the same as a Node response, though, so proceed with caution. Thexhris the XMLHttpRequest used to run the request operation. - body: This is going to be a string or, if the mimeType was
application/json, an object.
Tests
Run in Chrome and Firefox with make test.
License
MIT.
TODO
Add JSON test.
