群里大佬开课,随手记录一下
跨域:指的是浏览器不能执行其他网站的脚本。它是由浏览器的同源策略造成的,是浏览器对javascript施加的安全限制。
跨域只存在与浏览器,脱离浏览器的跨域没有意义.
如果把资源放在一个服务器下,那么资源就从这个服务器请求过来.,不存在跨域.(在这里提一下ajax,服务器转发ajax,就是代理.那么这样就变成了前端代理服务器,或者nginx代理服务器和java的tomcat或者php的apache之间的通信了,而服务器和服务器之间的通信,用的是TCP/IP协议.根本不存在跨域一说.
比如说上线了,打包的资源放在nginx下,nginx无法处理ajax,那么nginx转发ajax就行了,这样一来,资源的发送和接收都是从nginx处进行.就不存在跨域了
跨域脱离浏览器就没有意义,服务器通信用TCP/IP,浏览器是发送http,安卓的ajax会被安卓拦截转成TCP/IP通信.所以这里的http跨域了,服务器可以收到也可以返回,返回的时候,看下头部信息这个http是否允许跨域,如图,哪里涉及跨域呢,就是服务器和java,让java配置一下允许跨域即可,php等同理.