浏览器请求服务器 常见异常

首先最好先了解http和https的区别

http与https的区别

菜鸟教程连接

HTTP状态码分类:总共分为5种类型

HTTP 状态码由三个十进制数字组成,第一个十进制数字定义了状态码的类型。
信息响应(100–199)
成功响应(200–299)
重定向(300–399)
客户端错误(400–499)
服务器错误 (500–599)

200:成功

301: 资源(网页等)被永久转移到其它URL

304:利用缓存 与200差不多,成功

如第二次请求页面时,加载的js或者css数据

400: 客户端请求的语法错误,服务器无法理解。

参数类型不匹配,如:沒傳參、需要整數而傳了小數

在这里插入图片描述

401: 无登录 没登录 无权限、权限错误,身份认证失败

404: 请求的资源(网页等)不存在
408: 请求超时
500: 后端服务器异常

如:a(int b)不传参一定报错

405 :异常

需要Post請求,但是發起了確實Get請求
在这里插入图片描述

415异常

在这里插入图片描述
在这里插入图片描述

在这里插入图片描述

在gateway處配置了同源策略後報的錯

在这里插入图片描述在geteway處沒有配置時

在这里插入图片描述後端代碼
在这里插入图片描述
將請求修改後

 //如果校验成功,则发起ajax请求
        //const {data: result} = await this.$http.post('/user/list',JSON.stringify(this.loginForm))
        const {data: result} =  await this.$http({
          method: 'post',
          url: '/user/list',
          data: JSON.stringify(this.loginForm),
          headers: {
            'Content-Type': 'application/json;charset=UTF-8'
          }
        }).then(res=>{
            console.log(res);
        }).catch(err=>{
            console.log(err);
        })
報錯403

已拦截跨源请求:同源策略禁止读取位于 ************ 的远程资源。(原因:CORS 头缺少 ‘Access-Control-Allow-Origin’)。
在这里插入图片描述
解决方方法很多,但是亲测了一种简单有效的方式:

对于springmvc4.0以上版本,直接在controller(全局)或者方法上使用@CrossOrigin 注解即可。
对于springmvc4.0以下版本,使用拦截器。

以上兩種方法都用了
在gatway配置了同源策略
在这里插入图片描述報錯:
1.已拦截跨源请求:同源策略禁止读取位于 http://localhost:9527/s 的远程资源。(原因:不允许有多个 ‘Access-Control-Allow-Origin’ CORS 头)。
2.org.mybatis.spring.MyBatisSystemException: nested exception is org.apache.ibatis.reflection.ReflectionException: There is no getter for property named ‘qo’ in ‘class com.josion.seckill.pojo.User’
at org.mybatis.spring.MyBatisExceptionTranslator.translateExceptionIfPossible(MyBatisExceptionTranslator.java:78)

這不是gateway報錯,是controller
在这里插入图片描述在这里插入图片描述
解決:系統中mybatis出錯了

504
在这里插入图片描述502
在这里插入图片描述

200 - 服务器成功返回网页,404 - 请求的网页不存在,503 - 服务器超时。
304

客户端发送了一个带条件的GET 请求且该请求已被允许,而文档的内容(自上次访问以来或者根据请求的条件)并没有改变,则服务器应当返回这个304状态码。简单的表达就是客户端已经执行了GET,但文件未变化。

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: 浏览器在以下情况下可能不会发送图片请求: 1. 图片已经被缓存,浏览器会直接从缓存中加载图片而不发送请求。 2. 图片的链接错误或者图片不存在,浏览器会放弃发送请求。 3. 网络连接异常或者服务器出现错误,导致浏览器无法发送请求。 4. 浏览器的安全设置拦截了图片请求,例如浏览器禁止加载非安全来源的图片等。 5. 用户手动取消了图片请求,例如在图片还未加载完成时主动刷新页面或者关闭了页面等。 ### 回答2: 浏览器在以下情况下可能不会发送图片请求: 1. 图片请求已经被浏览器缓存:浏览器会对经常访问的图片进行缓存,如果之前已经请求过并且没有过期,浏览器会直接从缓存中获取图片,而不会再发送请求。 2. 图片链接错误或无效:如果在页面中引用的图片链接错误或者无效,浏览器将无法加载该图片,因此也不会发送请求。 3. 图片加载被用户取消:在图片加载过程中,如果用户手动取消了图片加载或者禁用了图片加载功能,浏览器将不会发送该图片的请求。 4. 图片请求服务器拒绝:有时服务器可能会限制对特定图片资源的访问,例如通过IP地址屏蔽或者需要进行身份验证等,这时浏览器发送的图片请求可能会被服务器拒绝。 5. 图片请求浏览器阻止:浏览器在某些情况下会对图片请求进行安全性检查,如果发现请求的图片存在恶意行为或者违反浏览器的安全规定,浏览器会阻止发送该请求。 总之,浏览器不会发送图片请求的情况主要涉及缓存、链接错误、用户取消加载、服务器限制和浏览器安全性检查等方面。 ### 回答3: 在以下情况下,浏览器可能不会发送图片请求: 1. 用户设置了浏览器的图像加载选项为“不显示图片”或“仅显示文本”,此时浏览器不会主动发送图片请求,而只会加载网页的文本内容。 2. 当网页代码中没有包含图片标签或没有正确的图片URL时,浏览器无法获取图片的地址,因此也就无法发送图片请求。 3. 网络连接异常服务器故障时,浏览器无法正常与服务器通信,因此无法发送图片请求。 4. 图片请求被网页设计者手动禁止。有时,网页设计者可能会使用特定的技术手段(如JavaScript代码)来阻止浏览器发送图片请求,以达到某种特定的设计目的。 5. 浏览器在缓存中找到了该图片的副本,并且判断缓存的图片版本是最新的,那么它可以直接从缓存中读取图片,而不需要发送图片请求。 需要注意的是,根据浏览器的不同,具体的情况会有所不同。以上只是一些常见的情况,实际情况可能因浏览器版本、用户设置、网页设计等因素而有所差异。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值