Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/asp.net/33.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
JavaScript中的404检测_Javascript_Asp.net_Http Status Code 404 - Fatal编程技术网

JavaScript中的404检测

JavaScript中的404检测,javascript,asp.net,http-status-code-404,Javascript,Asp.net,Http Status Code 404,在我的JavaScript中,我试图重定向到第三方页面。它可以在新窗口或框架内打开页面,具体取决于用户设置。大概是这样的: if (newWindow) { window.open(url, targer); } else { theFrame = url; } 我想做的是显示我的自定义页面,以防第三方网站关闭或页面不可用。基本上是在404错误的情况下 解决此问题的最佳方法是什么?因为如果另一个窗口或框架的内容位于不同的域名上,您无法检测到它的任何内容,包括它是否实际加载。另一种想

在我的JavaScript中,我试图重定向到第三方页面。它可以在新窗口或框架内打开页面,具体取决于用户设置。大概是这样的:

if (newWindow)
{
   window.open(url, targer);
}
else
{
   theFrame = url;
}
我想做的是显示我的自定义页面,以防第三方网站关闭或页面不可用。基本上是在404错误的情况下

解决此问题的最佳方法是什么?

因为如果另一个窗口或框架的内容位于不同的域名上,您无法检测到它的任何内容,包括它是否实际加载。

另一种想法是。。。 您可以使用服务器端语言检查目标url

对于PHP:使用Curl可以获得url的http状态

http_代码就是您要查找的curl_getinfo($ch[,int$opt=0])


在@risyasin advice之后,我使用ASP.NET解决了服务器端的问题

protected void Page_Load(object sender, EventArgs e) {
    HttpWebResponse response;
    try
    {
        var request =
            (HttpWebRequest)WebRequest.Create("http://www.someSite.com/camdsa");
        response = request.GetResponse() as HttpWebResponse;
    }
    catch (WebException webException)
    {
        Response.Redirect("ErrorPage.aspx?status="
+ webException.Status);
        return;
    } }

您可以在这里阅读我的解决方案。

+1了解解决方案,但我打赌Vadim需要纯javascript版本。没有任何javascript解决方案。事实上,如果有。这是一个危险的错误,可能是毁灭性的…与ASP.Net,我想它一定是这样的东西。这很容易。HttpWebRequest webrequest=(HttpWebRequest)webrequest.Create(“);HttpWebResponse httpresponse=(HttpWebResponse)webrequest.GetResponse();Response.Write(httpresponse.StatusCode);注释框无法粘贴代码…请尝试此url