美文网首页
axios 304 而无法正常拿到数据

axios 304 而无法正常拿到数据

作者: xcyzjs | 来源:发表于2019-12-20 14:54 被阅读0次

服务器报 304 的原理:

  1. 客户端第一次向服务端请求资源时, 服务端响应 200 并在响应头中返回一个 ETag 值
  2. 客户端再次向服务端请求同一个资源( url 未变), 此时会带上上一次服务端返回的 ETag, 服务器检查其自身内容的 ETag 值是否与其一致,如果一致就会返回 304 状态码,告诉你内容和你保存的一致,没有发生改变过。

解决办法:

  1. 在请求头中加入 'Cache-Control': 'no-cache'
// axios 封装时, 全局设置
const options = {
    headers: {
      'Cache-Control': 'no-cache'
    }
  }
const client = axios.create(options)
  1. 在请求中添加一个随机的查询字符串, 如 ?query=时间戳

参考:

相关文章

网友评论

      本文标题:axios 304 而无法正常拿到数据

      本文链接:https://www.haomeiwen.com/subject/jscinctx.html