当前位置:   article > 正文

axios 请求 url 地址,判断网络地址是否存在

axios 请求 url 地址,判断网络地址是否存在

使用 axios 来判断一个 URL 地址是否可连接,通常涉及到发送一个 HTTP 请求到这个地址,并检查响应的状态码。如果请求成功,并且返回了 200 OK 状态码,那么通常可以认为这个地址是可连接的。

以下是一个简单的示例,使用 axios 来发送 GET 请求并判断 URL 是否可连接:

const axios = require('axios');  
  
async function isUrlReachable(url) {  
  try {  
    const response = await axios.get(url, {  
      timeout: 5000, // 设置请求超时时间,例如5秒  
      headers: {  
        // 你可以在这里添加自定义的请求头,例如:  
        // 'User-Agent': 'your-custom-user-agent'  
      },  
      // 如果只需要检查连接性,而不关心响应内容,可以设置 validateStatus  
      validateStatus: status => status >= 200 && status < 300,  
    });  
  
    // 如果请求成功,并且状态码在200-299之间,那么可以认为URL是可连接的  
    if (response.status >= 200 && response.status < 300) {  
      return true;  
    } else {  
      // 如果状态码不在200-299之间,但请求仍然成功(例如重定向),你可能需要根据你的需求来处理  
      console.log(`Unexpected status code: ${response.status}`);  
      return false;  
    }  
  } catch (error) {  
    // 如果请求失败(例如网络错误、超时、4xx/5xx状态码等),那么URL不可连接  
    if (axios.isCancel(error)) {  
      // 如果请求被取消(例如因为超时),可以在这里处理  
      console.log('Request canceled', error.message);  
    } else if (error.code) {  
      // 处理特定的错误代码,例如 'ECONNABORTED' 表示连接被中止  
      console.log(`Error code: ${error.code}`);  
    } else {  
      // 处理其他错误情况  
      console.error('Error', error.message);  
    }  
    return false;  
  }  
}  
  
// 使用示例  
const url = 'https://example.com';  
isUrlReachable(url).then(reachable => {  
  console.log(`URL is reachable: ${reachable}`);  
});
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
  • 25
  • 26
  • 27
  • 28
  • 29
  • 30
  • 31
  • 32
  • 33
  • 34
  • 35
  • 36
  • 37
  • 38
  • 39
  • 40
  • 41
  • 42
  • 43

这个示例中的 isUrlReachable 函数会发送一个 GET 请求到指定的 URL,并返回一个 Promise。如果 URL 可连接,Promise 将解析为 true;否则,Promise 将解析为 false。同时,它会捕获并处理各种可能的错误情况。

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/不正经/article/detail/245720
推荐阅读
相关标签
  

闽ICP备14008679号