js ajax跨域請求
阿新 • • 發佈:2019-01-07
1 協議+域名+埠相同,就不算跨域,否則跨域
http://192.168.168.1:80/aaa
http://192.168.168.1:80/bbb
http://192.168.168.1/ccc //預設埠是80
以上都不是跨域
A網站AJAX請求B網站,算是跨域
跨域不可請求是瀏覽器的限制
2 解決方案:
https://www.cnblogs.com/hujunzheng/p/5744755.html
2.1 後端(響應頭中加入跨域許可),若跨域操作cookie
@RequestMapping("/addGoodsToCartList") @CrossOrigin(origins="http://localhost:9105",allowCredentials="true") //SpringMVC註解允許 http://localhost:9105 可以跨域請求本站 public Result addGoodsToCartList(Long itemId,Integer num,HttpServletResponse response){ /* //非註解處理 response.setHeader("Access-Control-Allow-Origin", "http://localhost:9105"); //可以訪問的域(當此方法不需要操作cookie), 若對所有域開放訪問,可以設定域為"*" response.setHeader("Access-Control-Allow-Credentials", "true"); //如果操作cookie,必須加上這句話 */
前端請求新增引數:withCredentials:true
2.2 前端Jsonp
2.3 Nginx代理轉發,欺騙瀏覽器