Note
Access to this page requires authorization. You can try signing in or changing directories.
Access to this page requires authorization. You can try changing directories.
Adds custom HTTP headers to the request.
Syntax
object.setRequestHeader(bstrHeader, bstrValue);
Parameters
bstrHeader [in]
Type: BSTRBSTR that specifies the header name.
bstrValue [in]
Type: BSTRBSTR that specifies the header value.
Return value
This method does not return a value.
Standards information
- XMLHttpRequest, Section 3.6.2
Remarks
Refer to RFC2616, Section 14: Header Field Definitions for a general list of standard headers. The server is ultimately responsible for honoring the headers of the request. By far the most common request header is Content-Type, which is required by some XML Web services.
IHTMLXMLHttpRequest::setRequestHeader was introduced in Windows Internet Explorer 7.
Examples
This example lets you load and display sections of a file. The example should be run on a server (localhost is fine).
<!DOCTYPE html>
<html >
<head>
<title>setRequestHeader example</title>
</head>
<body>
<div>Enter a file, start and end point of a range. </div><br />
<label>Start Range: <input id="startRange" placeholder="Type a place to start" /></label><br />
<label>End Range: <input id="endRange" placeholder="Type a place to end"/></label><br />
<label>File: <input id="filename" placeholder="Type a text file" /></label><br />
<button id="getFile">Get file</button><br />
<div id="output" style="display:block; overflow:auto; max-width:800px"></div>
<!-- Put script below HTML to ensure elements are loaded -->
<script>
// Get data from the HTML elements
document.getElementById("getFile").addEventListener("click", function () {
var url = document.getElementById("filename").value.toString();
var range = document.getElementById("startRange").value.toString();
range += "-" + document.getElementById("endRange").value.toString();
getData(url, range);
}, false);
// Get data from file
function getData(url, range) {
if (url !== "") {
var xhr = new XMLHttpRequest(); // Set up xhr request
xhr.open("GET", url, true); // Open the request
xhr.responseType = "text"; // Set the type of response expected
// If there's a range set, create a request header to limit to that range
if (range !== undefined && range !== null && range.length > 0) {
xhr.setRequestHeader("Range", "bytes=" + range);
}
xhr.send();
// Asynchronously wait for the data to return
xhr.onreadystatechange = function () {
if (xhr.readyState == xhr.DONE) {
var tempoutput = xhr.response;
document.getElementById("output").innerHTML = tempoutput;
}
}
// Report errors if they happen
xhr.addEventListener("error", function (e) {
console("Error: " + e + " Could not load url.");
}, false);
}
}
</script>
</body>
</html>