❤网络跨域报错篇http

❤网络跨域报错篇http

1、常见的网络错误类型

(1)服务端错误:

服务器返回了错误的数据或未正常响应请求。可以通过查看服务端的日志或与后端开发人员进行沟通来解决这个问题。

(2)跨域问题:

浏览器处于安全考虑,禁止跨域的请求。可以使用CORS(跨域资源共享)解决此问题,或在开发环境下使用代理转发进行开发。

Vue在进行网络请求时,默认是不允许跨域的,域是指在Web应用程序中,通过XMLHttpRequest或Fetch等方式请求其他域的资源。如果你的Vue应用和API服务器的域名不一致,就会出现跨域问题,从而导致网络错误。

解决跨域问题有以下几种方法:

在服务器端设置响应头,允许跨域请求。

使用反向代理服务器,将API请求转发到同一域名下,避免跨域问题。

使用JSONP进行跨域请求,JSONP是一种简单的跨域解决方案。

(3)网络连接问题:

网络连接不稳定,导致请求失败。可以尝试刷新页面或者检查网络连接是否正常。

(4)HTTPS问题:

如果项目使用HTTPS协议,而请求的接口不支持HTTPS,就会出现网络错误。可以检查接口是否支持HTTPS,如果不支持,可以尝试将项目改为HTTP或更换接口。

(5)防火墙问题:

防火墙可能会阻止请求,尤其是在企业内网环境中。可以联系系统管理员或网络管理员解决此问题。

(6)代理问题:

如果你的网络需要使用代理才能访问外网,且代理设置不正确,就会导致网络错误。可以检查代理设置是否正确并进行修改。

(7)DNS问题:

DNS(Domain Name System)是将域名转换为IP地址的系统。如果DNS服务器出现故障或配置不正确,就无法正确解析域名,会导致网络错误。

(8)SSL证书问题:

如果Vue应用通过HTTPS协议访问服务器,那么服务器需要提供有效的SSL证书。如果服务器的SSL证书无效或过期,浏览器会提示证书错误,从而导致网络错误

(8)防火墙限制:

防火墙限制:有些网络环境下,通过防火墙或代理服务器等网络设备对网络进行管理和限制。这些设备可能会对某些请求进行阻止或拦截,导致网络错误

Access-Control-Allow-Credentials(请求头)

前后端分离的项目中碰到跨域问题报错:

Access to XMLHttpRequest at 'http://localhost/api/admin/authorizations' from origin 'http://localhost:9528' has been blocked by CORS policy: Response to preflight request doesn't pass access control check: The value of the 'Access-Control-Allow-Credentials' header in the response is '' which must be 'true' when the request's credentials mode is 'include'. The credentials mode of requests initiated by the XMLHttpRequest is controlled by the withCredentials attribute.

Access-Control-Allow-Credentials 头的作用

这个是服务端下发到客户端的 response 中头部字段,意义是允许客户端携带验证信息,例如 cookie 之类的。这样客户端在发起跨域请求的时候,就可以携带允许的头,还可以携带验证信息的头

由于客户端是请求是 axios,设置了 withCredentials: true,意思是客户端想要携带验证信息头,但是服务端设置是 'supportsCredentials' => false, 表示不允许携带信息头,错误找到了。

客户端和服务端交互的时候使用的是 token,通过 Authorization头发送到服务端,并没有使用到 cookie,所以客户端没有必要设置 withCredentials: true

axios 带cookie 怎么设置跨域

用axios请求node后台,需要带上cookie,已经配置了axios.defaults.withCredentials=true,但是问题是,项目打包成apk后前台的地址是不固定的

后台node配置跨域

js 复制代码
var corsOptions = {
	origin: ['http://localhost:8088', 'http://xxx:8080',"http://xxxx"],
	credentials:true
}

This request has been blocked; the content must be served over HTTPS.

This request has been blocked; the content must be served over HTTPS.

》》此请求已被阻止;内容必须通过HTTPS提供。

解决方式:
http更换为https

相关推荐
Geeys6 小时前
拼多多新店快速起流量完整实操
大数据·网络·人工智能
玖玥拾6 小时前
C# 语言进阶(十四)Unity UI界面开发 + 网络消息联动
服务器·开发语言·网络·ui·unity·c#·游戏引擎
hbugs0017 小时前
PNETLab vs EVE-NG Pro 流量洞察功能底层架构技术白皮书
网络·架构·eve-ng·bpf·流量洞察
不会C语言的男孩8 小时前
TCP通信可视化工具,含下载地址
服务器·网络·安全
五五六六05248 小时前
2026盘古石杯初赛
网络
玖玥拾8 小时前
C# 语言进阶(十三)网络 DLL 库分层设计
服务器·开发语言·网络·网络协议·c#
大师兄66688 小时前
HarmonyOS7 HTTP 网络请求封装:统一拦截器实战
网络·网络协议·http·arkui·harmonyos7·实战讲解
hbugs0019 小时前
BPF 表达式检查器:一款免费开源的 Wireshark 捕获过滤器语法检查与可视化构建工具
网络·测试工具·开源·eve-ng·bpf
韩曙亮9 小时前
【Flutter】iOS 网络权限设置 ② ( 配置 iOS 平台可使用 HTTP 访问 | ATS 网络安全强制规范 )
网络·flutter·http·ios·https·网络权限·ats
tiantianuser9 小时前
NVME-oF IP 设计1 :为什么要设计它?
网络·网络协议·rdma·roce v2·nvme of