標籤:word lan param spring4 string message 前端 disable 要求方法
解決方案一(伺服器端):
1.java語言
如果您使用的mvc架構是spring4.2以上的話,一個@CrossOrigin就可以搞定。將@CrossOrigin加到Controller上,那麼這個Controller所有的請求都是支援跨域的,代碼如下:
@Controller@CrossOriginpublic class GreetingController {}
將@CrossOrigin加到要求方法上,那麼這個請求是支援跨域的,代碼如下
@CrossOrigin @RequestMapping("/greeting") public @ResponseBody Greeting greeting(@RequestParam(required=false, defaultValue="World") {}
2.php語言
指定某網域名稱(http://client.runoob.com)跨域訪問,則只需在http://server.runoob.com/server.php檔案頭部添加如下代碼:
header(‘Access-Control-Allow-Origin:http://client.runoob.com‘);
指定多個網域名稱(http://client1.runoob.com、http://client2.runoob.com等)跨域訪問,則只需在http://server.runoob.com/server.php檔案頭部添加如下代碼:
$origin = isset($_SERVER[‘HTTP_ORIGIN‘])? $_SERVER[‘HTTP_ORIGIN‘] : ‘‘; $allow_origin = array( ‘http://client1.runoob.com‘, ‘http://client2.runoob.com‘ ); if(in_array($origin, $allow_origin)){ header(‘Access-Control-Allow-Origin:‘.$origin); }
允許所有網域名稱訪問則只需在http://server.runoob.com/server.php檔案頭部添加如下代碼:
header(‘Access-Control-Allow-Origin:*‘);
解決方案二(前端):
1.屏蔽瀏覽器安全訪問(chrome)
右擊案頭chrome瀏覽器表徵圖-->屬性,進行如下操作
--args --disable-web-security
2.設定代理(以vue-cli為例)
解決方案三(古老):
1.jsonp請求
2.postMessage
3.window.name
前後端分離ajax請求跨域問題