Objekt initiering
var HRObj=false;
if (window.XMLHttpRequest)
HRObj = new XMLHttpRequest();
else if (window.ActiveXObject)
HRObj = new ActiveXObject("Microsoft.XMLHTTP");
else
alert("Inget objekt");
Object methods och properties
IE : Internet Explorer
FF : Mozilla, Firefox, Netscape Navigator
AS : Apple Safari
Object Properties | R/W | IE | FF | AS |
---|---|---|---|---|
onreadystatechange | R/W | X | X | |
readyState | R | X | X | X |
responseBody | R | X | ||
responseStream | R | X | ||
responseText | R | X | X | X |
responseXML | R | X | X | X |
status | R | X | X | X |
statusText | R | X | X | X |
channel | R | X |
Object Methods | IE | FF | AS |
---|---|---|---|
abort | X | X | X |
getAllResponseHeaders | X | X | X |
getResponseHeader | X | X | X |
open | X | X | |
send | X | X | |
setRequestHeader | X | X | |
openRequest | X | ||
overrideMimeType | X |
Readystate värden
0 | Uninitialized |
1 | Loading |
2 | Loaded |
3 | Interactive |
4 | Complete |
Status värden
200 | OK |
201 | Created |
204 | No content |
205 | Reset content |
206 | Partial content |
400 | Bad request |
401 | Unauthorized |
403 | Forbidden |
404 | Not found |
405 | Method not allowed |
406 | Not acceptable |
407 | Proxy Authentication required |
408 | Request timeout |
411 | Length required |
413 | Requested entity too large |
414 | Requested URL too long |
415 | Unsupported media Type |
500 | Internal server error |
501 | Not implemented |
502 | Bad Gateway |
503 | Service unavailable |
504 | Gateway Timeout |
505 | HTTP Version not supporded |
Object methods och properties
Open("method", "URL" [, asyncFlag [, "username" [, "password"]]]
method : GET, POST, PUT, HEAD, PROPFIND
asyncFlag : true/false default true
SCRIPT
if (HRObj) {
HRObj.open("GET", "test1.asp");
HRObj.onreadystatechange = function() {
  if (HRObj.readyState==4 && HRObj.status==200) {
  if (nFunc=="getText")
  txt = HRObj.responseText;
  else if (nFunc== "getXML")
  xml = HRObj.responseXML;
}
}
HRObj.send(null);
}
Övrigt
Köra javascript från server : eval(HRObj.responseText)
frågesträng : name=value. & separerar, + ersätter mellanslag. två siffror för ascii kod ersätter å,ä,ö t.ex.
För att tolka responseXML krävs header("Content-type:text/xml") när data skickas.
HRObj.open("HEAD", datasource);
var sAll = HRObj.getAllResponseHeaders();
# eller
var date = new Date(HRObj.getResponseHeader("Last-Modified"));
if (status==200) then bExist=true;
else if (status==404) bExist=false;
Firefox debugger script
Tools-Manage user scripts