Test xhr request
This commit is contained in:
19
src/scripts/lib/request.js
Normal file
19
src/scripts/lib/request.js
Normal file
@@ -0,0 +1,19 @@
|
|||||||
|
module.exports = function(location, callback) {
|
||||||
|
var request = new XMLHttpRequest()
|
||||||
|
|
||||||
|
request.onreadystatechange = function() {
|
||||||
|
if (request.readyState === 4) {
|
||||||
|
if (request.status === 200) {
|
||||||
|
callback(request.responseText, request)
|
||||||
|
}
|
||||||
|
else {
|
||||||
|
callback(null, request)
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
request.open("GET", location + (!/[?&]/.test(location) ? "?": "&") + (new Date().getTime()), true)
|
||||||
|
request.setRequestHeader("X-Requested-With", "XMLHttpRequest")
|
||||||
|
request.send(null)
|
||||||
|
return request
|
||||||
|
}
|
||||||
16
tests/scripts/lib/request.js
Normal file
16
tests/scripts/lib/request.js
Normal file
@@ -0,0 +1,16 @@
|
|||||||
|
var tape = require("tape")
|
||||||
|
|
||||||
|
var request = require("../../../src/scripts/lib/request.js")
|
||||||
|
|
||||||
|
tape("test xhr request", function(t) {
|
||||||
|
var xhr = request("https://api.github.com/", function(result) {
|
||||||
|
try {
|
||||||
|
result = JSON.parse(result)
|
||||||
|
}
|
||||||
|
catch (e) {
|
||||||
|
t.fail("xhr doesn't get a JSON response")
|
||||||
|
}
|
||||||
|
t.same(typeof result, "object", "xhr request get a result")
|
||||||
|
t.end()
|
||||||
|
})
|
||||||
|
})
|
||||||
Reference in New Issue
Block a user