0

当我尝试将 PING 请求发送到被 chrome 标记为 DANGEROUS 的网站时,我的 JS 代码中有一些有趣的行为,例如:

我尝试在输入字段中输入网站 url reddit.com,我的 js 从头开始​​检查所有组合:

1)  r - (1) invalid url
2)  re - (1) invalid url
3)  red - (1) invalid url
4)  redd - (1) invalid url
5)  reddi - (1) invalid url
6)  reddit - (1) invalid url
7)  reddit. - (1) invalid url
8)  reddit.c - (1) invalid url
9)  reddit.co - (1) url valid, (2) check is url exists
10) reddit.com - this step can't be reached because big full-screen error from previous step

在第 8 步,一切正常 在此处输入图像描述

在第 9 步,我有很大的全屏错误:前面的欺骗性网站... 在此处输入图像描述

如何处理这种行为,如果他真的想要它,就让用户选择它。

我的 JS 代码使 PING

export function fetch_with_timeout(url, options, timeout = 7000) {
   return Promise.race([
      fetch(url, options),
      new Promise((_, reject) => setTimeout(() => reject(new Error('timeout')), timeout)),
   ]);
}
4

1 回答 1

0

所以我看到的唯一解决方案是向实际执行 ping 的服务器发出 ping 请求,并以 Web 资源可用性进行响应。

要求

{ "url": "reddit.co" }

回应

{ "url": "reddit.co", "available": true }
于 2019-03-10T13:26:38.543 回答