摘要:介紹一種不是通過js實(shí)現(xiàn)跨域的方式: 通過服務(wù)器端代理實(shí)現(xiàn)。具體的思路:由于瀏覽器有同源策略限制,所以想要跨域訪問其他域下的資源,需要繞開瀏覽器的這個(gè)限制,可以在服務(wù)器端設(shè)置一個(gè)代理,由服務(wù)器端向跨域下的網(wǎng)站發(fā)出請求,再將請求結(jié)果返回給前端,成功避免同源策略的限制。具體操作如下:1、在localhost:81/a.html中,向同源下的某個(gè)代理程序發(fā)出請求$.ajax({
介紹一種不是通過js實(shí)現(xiàn)跨域的方式: 通過服務(wù)器端代理實(shí)現(xiàn)。
具體的思路:由于瀏覽器有同源策略限制,所以想要跨域訪問其他域下的資源,需要繞開瀏覽器的這個(gè)限制,可以在服務(wù)器端設(shè)置一個(gè)代理,由服務(wù)器端向跨域下的網(wǎng)站發(fā)出請求,再將請求結(jié)果返回給前端,成功避免同源策略的限制。
具體操作如下:
1、在localhost:81/a.html中,向同源下的某個(gè)代理程序發(fā)出請求
$.ajax({ url:'/proxy.php?name=hello&info=information', //服務(wù)器端的代理程序 type:'GET', success:function (){} })
2、在代理程序proxy.php中,向非同源下的服務(wù)器發(fā)出請求,獲得請求結(jié)果,將結(jié)果返回給前端。
<?php $name=$_GET['name']; $info = $_GET['info']; $crossUrl = 'http://b.com/sub?name='.$name; //向其他域下發(fā)出請求 $res = file_get_contents($crossUrl); echo $res; ?>