Difference between revisions of "GM.xmlHttpRequest"

From GreaseSpot Wiki
Jump to navigationJump to search
Line 7: Line 7:
= Description =
= Description =


This API provides access to the chrome-privileged [http://kb.mozillazine.org/XMLHttpRequest XMLHttpRequest] object.
This API provides access to the chrome-privileged [http://developer.mozilla.org/en/docs/XMLHttpRequest XMLHttpRequest] object.
This means that it '''is''' possible to issue requests to domains other than that of the current page.
This means that it '''is''' possible to issue requests to domains other than that of the current page.



Revision as of 21:48, 7 July 2007

Template:Underscore

Syntax

GM_xmlhttpRequest( details )

Description

This API provides access to the chrome-privileged XMLHttpRequest object. This means that it is possible to issue requests to domains other than that of the current page.

The details parameter is an object having the following properties: method, url, headers, onload, onreadystatechange, onerror, data, overrideMimeType. All fields are optional except method and url. The headers field is an object which should contain the name-value pairs of the headers to send, for instance {"User-Agent":"Mozilla"}. The onload, onreadystatechange, and onerror parameters are callback functions which are called when the corresponding events occur.

Callback functions should accept a single object parameter having the following properties: responseText, status, statusText, readyState, and responseHeaders. The responseHeaders is the string representation of response headers returned by XMLHTTPRequest.getAllResponseHeaders().

Examples

GM_xmlhttpRequest({
  method:"GET",
  url:"http://youngpup.net/",
  headers:{
    "User-Agent":"monkeyagent",
    "Accept":"text/monkey,text/xml",
  },
  onload:function(details) {
    alert([
      details.status,
      details.statusText,
      details.readyState,
      details.responseHeaders,
      details.responseText
    ].join("\n"))
  }
});

Notes

Some users have reported problems with international character sets. See these mailing list threads

The overrideMimeType parameter became available in version 0.6.8.