js有没有办法检测一个域名是否可访问?不能用JQ

例如我有一个5个域名
其中有的域名不可访问,我需要挑选出可以正常访问的域名来。
3000ms超时算不可访问,有没有什么可行的方法???

阅读 3.6k
1 个回答

浏览器环境的话,就用一个隐藏的iframe,监听其load和error事件,然后修改其src为需要测试的域名,并计时。超时、40x就可算作不可访问了。
当然,服务端可能验证refer,所以测出来不可访问的不一定不可访问,但是可访问的一定可访问(排除DNS劫持和hosts篡改)。
其他环境的话,可以ping一下,不过有些主机不让ping,curl、wget也可能被屏蔽。
对于主机屏蔽了部分UA或者refer的域名,可能需要更加准确的可访问性描述,不能用“能否”二字简单地区分。

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题