提问者:小点点

HTTP请求获取HTTP状态代码,但没有内容


我使用axios获取URL的http状态:

async function getUrlHttpStatus (url) {
  try {
    const res = await axios({ method: 'get', url })
    return {
      status: res.status,
      statusText: res.statusText
    }
  } catch (err) {
    return {
      status: err.response.status,
      statusText: err.response.statusText
    }
  }
}

这显然也会从该URL中带回所有内容,如果有很多内容,则会非常缓慢。

有没有一种方法可以发出HTTP请求,获取HTTP状态代码,而不需要从URL下载所有内容,这样就可以快速。。?


共2个答案

匿名用户

您可以只使用HEAD方法,该方法在每个定义中只返回HEAD(即状态代码)而不返回body。

匿名用户

访问错误的方式为:err.response.data.Your_attribute_from_the_server

如果来自服务器的消息在消息属性中,则错误对象在err.response.data.message中,例如:err.response.data.message

async function getUrlHttpStatus (url) {
  try {
    const res = await axios({ method: 'get', url })
    return {
      status: res.status,
      statusText: res.statusText
    }
  } catch (err) {
    return {
      status: err.response.status,
      statusText: err.response.data.message//here replace the message attibute with whatever attribute you've sent from the server
    }
  }
}