d.garanzha
d.garanzha

Reputation: 813

How to get HTTP status from JavaScript

How to get HTTP status code of another site with JavaScript?

Upvotes: 3

Views: 35557

Answers (4)

Ollie Edwards
Ollie Edwards

Reputation: 14779

You can't do this with AJAX directly because of the same origin policy.

You'd have to set up a proxy service on your server then make ajax calls to that with the address you want to check. From your server proxy you can use cURL or whatver tool you like to check the status code and return it to the client.

Upvotes: 2

Awin
Awin

Reputation: 894

You will have to use XMLHTTPRequest for getting the HTTP status code. This can be done by making a HEAD request to the server for the required url. Create an XMLHTTPRequest object - xhr, and do the following

 xhr.open("HEAD", <url>,true);
 xhr.onreadystatechange=function() {
     alert("HTTP Status Code:"+xhr.status)
 }
 xhr.send(null);

See here for more details.

Upvotes: 6

Ahmed Aman
Ahmed Aman

Reputation: 2403

Try the following piece of javascript code:

function getReq() {
    var req = false;
    if(window.XMLHttpRequest) {
        try {
            req = new XMLHttpRequest();
        } catch(e) {
            req = false;
        }
    } else if(window.ActiveXObject) {
        try {
            req = new ActiveXObject("Microsoft.XMLHTTP");
        } catch(e) {
            req = false;
        }
    }
    if (! req) {
        alert("Your browser does not support XMLHttpRequest.");
    }
    return req;
}

    var req = getReq();

        try {
        req.open("GET", 'http://www.example.com', false);
        req.send("");
    } catch (e) {
        success = false;
        error_msg = "Error: " + e;
    }

alert(req.status);

Upvotes: 7

Anders
Anders

Reputation: 6218

I assume JavaScript, with JQuery, which simplifies AJAX requests alot, like this.

$.ajax({
  url: 'url',
  type: 'GET',
  complete: function(transport) {
      doing whatever..
  }
});

Upvotes: 0

Related Questions