1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75
|
import QtQuick 2.0
QtObject {
property string url
property string expectedStatus
property bool unsentException: false;
property bool openedException: false;
property bool sentException: false;
property bool headersReceived: false
property bool loading: false
property bool done: false
property bool resetException: false
property bool dataOK: false
Component.onCompleted: {
var x = new XMLHttpRequest;
try {
var a = x.statusText;
} catch (e) {
if (e.code == DOMException.INVALID_STATE_ERR)
unsentException = true;
}
x.open("GET", url);
x.setRequestHeader("Accept-Language", "en-US");
try {
var a = x.statusText;
} catch (e) {
if (e.code == DOMException.INVALID_STATE_ERR)
openedException = true;
}
// Test to the end
x.onreadystatechange = function() {
if (x.readyState == XMLHttpRequest.HEADERS_RECEIVED) {
if (x.statusText == expectedStatus)
headersReceived = true;
} else if (x.readyState == XMLHttpRequest.LOADING) {
if (x.statusText == expectedStatus)
loading = true;
} else if (x.readyState == XMLHttpRequest.DONE) {
if (x.statusText == expectedStatus)
done = true;
dataOK = (x.responseText == "QML Rocks!\n") && (x.response == "QML Rocks!\n");
x.open("GET", url);
x.setRequestHeader("Accept-Language", "en-US");
try {
var a = x.statusText;
} catch (e) {
if (e.code == DOMException.INVALID_STATE_ERR)
resetException = true;
}
}
}
x.send()
try {
var a = x.statusText;
} catch (e) {
if (e.code == DOMException.INVALID_STATE_ERR)
sentException = true;
}
}
}
|