使用 Axios 作为 Ping [重复]

Posted

技术标签:

【中文标题】使用 Axios 作为 Ping [重复]【英文标题】:Using Axios as a Ping [duplicate] 【发布时间】:2017-09-19 11:58:56 【问题描述】:

我有一个网页正在本地主机上运行。该网页有一些在页面加载时运行的 javascript。我想看看网页是否可以连接到外部互联网。

我想我会使用Axios,看看我是否可以访问 Google。所以,我尝试了以下方法:

axios.get('https://www.google.com')
  .then(function (res) 
    alert('Google found!');
  )
  .catch(function (err) 
    console.log(err);
    alert('Cannot find Google');
  )
;

当此代码运行时,我在控制台窗口中看到以下错误:

XMLHttpRequest 无法加载 https://www.google.com/。请求的资源上不存在“Access-Control-Allow-Origin”标头。 Origin 'http://localhost:3000' 因此不允许访问。

我的问题是,我如何使用 Axios 来查看我是否可以访问互联网?

【问题讨论】:

简短的回答是你不能,除非远程站点接受头请求,并且你只发出头请求。使用代理。 【参考方案1】:

axios 无法进行跨域请求,可以尝试使用跨域库。 比如jquery、zepto等。

【讨论】:

其实axios可以进行跨域请求,只需要在请求中包含“crossDomain: true”即可。在这里查看答案:***.com/questions/42422494/cross-domain-at-axios axios 可以进行跨域请求。您只需启用 CORS。

以上是关于使用 Axios 作为 Ping [重复]的主要内容,如果未能解决你的问题,请参考以下文章

用 Axios 反应 JS [重复]

使用 reactjs 和 axios 防止 json 数组重复

Axios - 无法使用“in”运算符搜索“validateStatus”[重复]

Axios 没有使用 useEffect() (React Js) [重复]

已解决:axios 在循环中重复一个请求,但我不想要这个 | axios [重复]

如何避免在 axios 中发送多个重复的 AJAX 请求