经常会使用iFRAME去嵌入其他服务端的页面,这里面可能会涉及到跨域问题。域指的是协议+主机+端口,只要有一个不同,则两个网址都不在同一个域。如果嵌入其他网站,发现连接失败,则有可能是目标网站禁止了被跨域。涉及的参数有:
Access-Control-Allow_Origin
Access-Control-Allow_Headers
Access-Control-Allow_Methods
X-Frame-Options:SAMEORIGN
如果目标网站禁止被其他网站嵌入,当前没什么好的办法。
还有一个事情,就是跨域的时候,如果目标网站的SSL证书有问题,则会跳出不安全连接的告警,这个时候单独访问目标网站,选择跳过不安全的告警后,则跨域产生的告警消失,但是清除浏览器缓存后又会出现。这个问题有几个解决办法:
1)目标网站选择被浏览器认可的SSL证书,即安全证书
2)目标网站和嵌入“目标网站”的服务端都选择相同的SSL证书,这样首次访问服务端的时候,就把警告跳过了,后面就不会出现了