【问题标题】:Javascript : Get domain nameJavascript:获取域名
【发布时间】:2017-02-23 18:45:34
【问题描述】:

我在 freenom.com 上购买了两个域名,并在 Firebase 上有一个应用程序。

我想知道在我的页面上输入了哪个域。

我试过了:

location.hostname
document.location
document.location.href

但它们都返回 Firebase 网址。有谁知道我怎么能得到它?

编辑:我怀疑我的问题来自 Firebase 或 Freename,他们会阻止我获取域名吗?

【问题讨论】:

  • @Antoine:您可以看到评论和第一个答案都指向使用location.hostname。如果这不起作用,请分享minimal code that reproduces the problem。请记住,成千上万的网站依赖于使用location.hostname,因此您的问题可能与您正在做的事情非常具体。例如:如果您可以共享您正在测试的 URL,我们可以查看您看到的相同内容。
  • 我在我的问题中添加了一个链接。

标签: javascript firebase dns


【解决方案1】:

你可以像这样做域。它不干净,但它有效

  function getDomain() {
    var domain = window.location.hostname;
    var parts = domain.split('.').reverse();
    var cnt = parts.length;
    if (cnt >= 3) {
      if (parts[1].match(/^(com|edu|gov|net|mil|org|nom|co|name|io|info|biz)$/i)) {
          return parts[2] + '.' + parts[1] + '.' + parts[0];
      }
    }
    return parts[1] + '.' + parts[0];
  }

【讨论】:

  • 它对我不起作用。试试这个link 看看我的问题是什么。
  • 不,它不起作用,因为您的代码是从 iframe 调用的。所以 iframe 来自 w3 学校,所以它的主机名是 w3 学校。 iframe 往往很棘手......该函数有效,它只是从不同的来源调用自己。
【解决方案2】:

domainName = window.location.hostname.split('.')[0]; //ie... google
console.log(domainName);
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>

【讨论】:

【解决方案3】:

试试这个 ->

window.location.hostname

【讨论】:

    猜你喜欢
    • 2012-11-02
    • 1970-01-01
    • 2017-05-27
    • 2012-01-05
    • 2023-03-07
    • 2011-03-19
    • 2010-11-07
    相关资源
    最近更新 更多