1、客户端拜访的地址和申请后端的接口地址不同(协定不同或者域名不同或者端口号不同)均会呈现跨域问题,跨域是浏览器的策略,接口是能拜访通的,只是返回体被浏览器拦挡了,看不到返回后果。
2、公布h5时,前端拜访地址能够拼接ip地址和端口号,然而必须拼对,评上客户端关上的ip和端口或者域名,也能够不拼接,间接写接口地址,如"/deyt/base/ure"。nginx配置了上面的货色,能够正确拜访。(nginx解决的跨域问题)
location /deyt {
proxy_set_header Host $host; proxy_set_header x-forwarded-for $remote_addr; proxy_set_header X-Real-IP $remote_addr; proxy_pass http://192.168.1.245:6060; //正式环境改成http://gas.deyt.cn }
3、前端解决跨域
proxyTable:{
'/deyt':{//这行的‘/deyt’是接口地址外面公共的局部 target:'http://192.168.1.129:6060',//拜访的后盾ip changeOrigin:true, pathRewrith:{ '^api':'/deyt',//这里轻易定义,不定义也能够 } }},
4、后端解决的跨域
须要的接口中央加上@CrossOrigin
5、app因为不是拜访浏览器不存在跨域的问题,打包的时候要拼接上正确的ip+端口或者域名