Question

On our web application I am trying to ping a 3rd party site to see if it is up before redirecting our customers to it. So far I have not seen a way to do this other than from a desktop app or system console. Is this possible? I have heard that there was an image trick in original ASP.

Currently we are using .NET MVC with Javascript.

Thank you,

Josh

Was it helpful?

Solution

You can do a two stage process where you make an AJAX call and if it works then redirect to the site. For example, the AJAX call could do something like:

public bool IsAddressResponsive(string Address)
{
    HttpWebRequest req = (HttpWebRequest)WebRequest.Create(Address);
    req.Method = "GET";
    HttpWebResponse resp = (HttpWebResponse)req.GetResponse();
    if (resp.StatusCode == HttpStatusCode.OK || resp.StatusCode == HttpStatusCode.Accepted)
    {
        return true;
    }
    else
    {
        return false;
    }
}

And if the response was true then redirect to the address.

OTHER TIPS

See the answer on this question to do it using jquery. how-to-test-a-url-in-jquery

You are probably looking for the System.Net.HttpWebRequest class. You can use this class to make a request to the 3rd party system. If it is a ASP.Net web app, you are probably making this call from your code behind.

You will then want to check for a 200 response code. Things get a little trickier if you have to worry about security, or passing along the users cookies.

Licensed under: CC-BY-SA with attribution
Not affiliated with StackOverflow
scroll top