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

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

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

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

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

总结:

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

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

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

相关推荐
乾元9 小时前
SDN 与 AI 协同:控制面策略自动化与策略一致性校验
运维·网络·人工智能·网络协议·华为·系统架构·ansible
橘子真甜~9 小时前
C/C++ Linux网络编程10 - http协议
linux·服务器·网络·c++·网络协议·http
车载测试工程师11 小时前
CAPL学习-ETH功能函数-方法类4
网络协议·tcp/ip·以太网·capl·canoe
hnlq11 小时前
基于dpdk的用户态协议栈的实现(三)—— TCP的三次握手实现
网络·网络协议·tcp/ip
sugar__salt12 小时前
网络编程套接字(二)——TCP
java·网络·网络协议·tcp/ip·java-ee·javaee
濊繵15 小时前
Linux网络--HTTP cookie 与 session
网络·网络协议·http
云和数据.ChenGuang15 小时前
运维工程师软件之httpd`(Apache HTTP Server)
运维·http·apache
Tandy12356_15 小时前
手写TCP/IP协议栈——ARP超时重新请求
c语言·c++·网络协议·计算机网络
方块A15 小时前
轻量级的 HTTP 跳转服务
网络·网络协议·http
爱跑步的程序员~15 小时前
TCP三次握手
网络·网络协议·tcp/ip