跨域通信的常见方式有哪些?
JSONP
JSONP 是通过动态创建 script 标签的方式,利用 script 标签可以跨域请求资源的特性来实现的,本质是利用了 script 标签没有跨域限制的特性,可以在请求的 url 后加一个 callback 参数,后端接收到请求后,将需要传递的数据作为参数传递到 callback 函数中,前端定义该函数来接收数据,从而实现跨域通信。
#27
CORS
CORS 是一种现代浏览器支持的跨域解决方案,CORS 全称为跨域资源共享(Cross-Origin Resource Sharing),其本质是在服务端设置允许跨域访问的响应头,浏览器通过判断响应头中是否允许跨域访问来决定是否允许跨域访问。
#28
postMessage
postMessage 是 HTML5 引入的一种新的跨域通信方式,主要是用于在不同窗口之间进行通信,包括不同域名、协议、端口等情况,通过调用 window.postMessage()方法,在两个窗口之间发送消息,接收方通过监听 message 事件来接收消息,从而实现跨域通信。
#29
WebSocket
WebSocket 是一种新的网络协议,可以实现客户端和服务器之间的实时双向通信,同时也可以跨域通信,WebSocket 协议建立在 TCP 协议之上,通过 HTTP 协议发起握手请求,握手成功后,客户端和服务器就可以通过 WebSocket 协议进行实时通信了。
#30
代理转发
代理转发是一种常用的跨域通信方式,主要是通过在同一域名下设置代理服务器,在代理服务器上实现跨域访问,再将结果返回给前端页面,从而实现跨域通信。
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论