1.問(wèn)題產(chǎn)生:
基于前后端分離的架構(gòu)思想,前后端都在同一臺(tái)電腦上
前端:vue? ?? ???express開(kāi)放端口 9528
后端: spring? ?開(kāi)放端口 8880
問(wèn)題 vue 調(diào)用 spring 產(chǎn)生了跨域問(wèn)題? ?403 Forbidden
Response 顯示 : Invalid CORS request
Cross-origin resource sharing(CORS)把 ip 換成 localhost 問(wèn)題依舊存在
什么是跨域招刨?
跨域,指的是瀏覽器不能執(zhí)行其他網(wǎng)站的腳本痘煤。它是由瀏覽器的同源策略造成的士骤,是瀏覽器對(duì)javascript施加的安全限制忆蚀。
所謂同源是指辩越,域名嘁扼,協(xié)議,端口均相同
上面 雖然 域名 localhost都相同了区匣,但端口不同,所以問(wèn)題還存在。??即 spring 和 vue不是同一個(gè)網(wǎng)站亏钩,所以 spring不允許 vue 訪問(wèn)
解決方法:
1.從spring下手莲绰,即讓它不要限制誰(shuí)來(lái)訪問(wèn)
a.通過(guò)注解@CrossOrigin 來(lái)控制一個(gè)接口或 controller
b.全局配置??WebMvcConfigurerAdapter
https://spring.io/blog/2015/06/08/cors-support-in-spring-framework
2.從vue下手,即讓spring發(fā)現(xiàn)不了是從其它網(wǎng)站來(lái)的訪問(wèn)