为什么接口测试工具不跨域

浏览器实施了同源策略,限制了在不同域之间的资源共享。这是出于安全考虑,以防止恶意网站获取用户的敏感信息。同源策略要求发送请求的源(协议、域名和端口)必须与接收响应的源相同。如果源不同,则浏览器会拒绝该请求,抛出跨域错误。

然而,Postman 不是一个运行在浏览器上的应用程序,它只是模拟了一个 HTTP 客户端发送请求和接收响应,不受浏览器的同源策略限制

跨域本质上是浏览器的问题。你用js发起一个http请求,底层是由浏览器(或者说是js运行时)去执行这个请求的。http请求发出去了,服务器收到也正常响应了,两者看似你情我愿,但是中间的浏览器一看,这响应报文的请求头不对呀,赶紧给他拦截了。

你用postman或其他工具或者用nodejs请求,因为不存在浏览器这个中间层 ,所以也没人把服务器的响应拦截住说你跨域了

总结:

第一:HTTP是无状态协议。每一次请求是独立的。

第二:跨域问题只存在于正经的浏览器,是出于安全考虑。

第三:HTTP请求谁都可以发,不只是浏览器。

相关推荐
mister_guo1 天前
HTTP 和 RPC:从一次干饭说清它们的区别
网络协议·http·rpc
严谨的麻辣烫1 天前
Python HTTP 连接池怎么用?从连接复用到请求异常排查
开发语言·python·http·requests·网络排查
K成长日志1 天前
BLE Host层L2CAP -- 配置参数选项
物联网·网络协议·嵌入式·蓝牙·iot·ble·bluetooth
幻智星科技1 天前
纯FPGA网络通信实现微秒级确定性延迟
网络协议·fpga开发·硬件架构
码林鼠1 天前
flutter网络http请求入门教程-dio
网络协议·flutter·http
Lsetea1 天前
curl访问HTTPS返回304却没有正文:条件请求、缓存与证书验收排查
linux·http·https·ssl证书·curl
zxanz11 天前
免费 SSL 证书的隐性成本:续期压力、稳定性与商业风险评估
网络·网络协议·ssl
zzu123zsw1 天前
面对多 RPC 扇入超时崩溃:深入 asyncTool 核心 DAG 编排与线程池隔离防护
java·网络·spring boot·网络协议·rpc·并发编程
福娃筱欢1 天前
金仓数据库配置SSL双向认证
数据库·网络协议·ssl
K成长日志1 天前
BLE Host层L2CAP -- 状态机
物联网·网络协议·无线通信·蓝牙·iot·ble