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

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

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

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

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

总结:

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

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

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

相关推荐
流浪00115 小时前
计算机网络篇16:传输层——TCP 报头属性字段:16 位窗口大小撑起流量控制,六个标志位标识报文类型
网络协议·tcp/ip·计算机网络·urg紧急指针·tcp报头
apollo_qwe16 小时前
接口超时了,前端为什么不能直接重试?
javascript·http
Jongkhurun19 小时前
以太网的最小帧长为什么是 64 字节:从 CSMA/CD 冲突窗口推导 64 Byte
网络协议
honsor1 天前
SNMP 读取以太网温湿度传感器数据,监控平台对接实操
物联网·网络协议·tcp/ip
Yves..1 天前
HTTP 协议学习笔记:从报文结构到抓包实践
网络协议·http·fiddler
沫璃染墨1 天前
从零入门计算机网络系列(十二):HTTP长连接与会话管理详解——从Connection到Cookie与Session
linux·服务器·c++·tcp/ip·ubuntu·http·交互
Black蜡笔小新2 天前
上云网关/端口穿透/设备上云EasyNTS:无需公网IP、也不改防火墙,设备怎么从内网跑到外网去
网络·网络协议·tcp/ip
小贾要学习2 天前
【C++后端开发项目】Reactor 模型 / C++ 仿写 muduo HTTP 服务器:让底层网络库真正跑起网页
linux·服务器·c++·http·网络编程·muduo·reactor模型
g5zhu58962 天前
没有公网ip的情况下,本地能ping服务器服务器不能ping本地,让服务器能访问本地某端口的简单方法
服务器·网络协议·tcp/ip
guizhoumen2 天前
net core下WebSocket请求总是断开的解决方案
网络·websocket·网络协议