要跨域发送一个post请求,应该怎么处理呢?有了解iframe跨域,我的理解是在a.html里面去嵌套一个iframe:b.html,在a.html里面要请求数据的时候,让b.html发送请求,得到服务端返回的数据再传递给a.html . 是这样的吗?有个疑问,为什么b.html可以发送请求呢?主域名是相同的。补充一下两个域名:http://a.sf.com/a.html --- 发送请求的页面http://b.sf.com/getData?param=1 --- 后端接口
2 回答
慕哥6287543
TA贡献1831条经验 获得超10个赞
先说前提:
归根结底,只要是浏览器和服务端交互就会有跨域。所以这个是无法避免的,前端也无法解决(因为同源策略的初衷就是要限制前端的能力)
然后分析下你的需求:
需要前后端跨域通信
又要发送post这种请求
因此,JSONP和图像ping直接排除,传统方法基本就只剩下cors方案了。
所以,解决方案是后端配置cors方案,如何配置可以参考:
或者,干脆用websocket,这个方案没有跨域问题(但是和普通ajax开发区别很大)
最后,问下,应该是说的是ajax这种异步post吧?如果不是的话,用传统的表单post也是可以请求的,它没有跨域问题(不过,前端无法获取结果,不属于异步开发)
添加回答
举报
0/150
提交
取消
