如何检查URL是否存在于angular 6中?

时间:2019-02-16 10:29:08

标签: typescript angular6

我想检查网址是否存在。我正在尝试使用以下代码:

resource "digitalocean_kubernetes_cluster" "k8s" {
  name    = "k8s"
  region  = "${var.region}"
  version = "1.12.1-do.2"

  node_pool {
    name       = "woker-pool"
    size       = "s-1vcpu-2gb"
    node_count = 1
  }
}

provider "kubernetes" {
  host = "${digitalocean_kubernetes_cluster.k8s.endpoint}"

  client_certificate     = "${base64decode(digitalocean_kubernetes_cluster.k8s.kube_config.0.client_certificate)}"
  client_key             = "${base64decode(digitalocean_kubernetes_cluster.k8s.kube_config.0.client_key)}"
  cluster_ca_certificate = "${base64decode(digitalocean_kubernetes_cluster.k8s.kube_config.0.cluster_ca_certificate)}"
}

但是它不起作用。它总是返回无效的URL。如何检查网址是否存在。

3 个答案:

答案 0 :(得分:1)

您需要在更改前检查readyState。

var x=new XMLHttpRequest();
x.timeout=15000;
x.open('GET','https://example.com');
x.onreadystatechange=function(){
    if(this.readyState==4){
        if(this.status==200){
            console.log('url exists');
        } else {
            console.log('url does not exist');
        }
    }
}
x.send();

答案 1 :(得分:0)

看看以下npm软件包:url-exists。非常轻巧,易于使用。希望对您有帮助!

答案 2 :(得分:0)

您应该在服务器端上进行检查,因为在前端端您必须处理CORS问题

function urlExists(url) {
  return fetch(url, {mode: "no-cors"})
    .then(res => true)
    .catch(err => false)
}

urlExists("http://www.mozilla.org").then(result => console.log("http://www.mozilla.org exists ? ", result ))

urlExists("http://www.mozillaaa.org").then(result => console.log("http://www.mozillaaa.org exists ?", result))