vue请求后端方法及解决跨域问题
目录
vue请求后端方法及解决跨域问题
今天做项目时,有这样一个需求:从前端界面发送影视分类的分类名,从后端获取该分类下的全部视频信息并返回给前端。
鼠标点击按钮事件

先简单尝试获取全部视频,测试一把
编写前端发送请求的axios

后端的spring security 配置类和认证过滤器记得放行,因为我们不需要登录(游客身份)也能正常搜索查看影片,所以肯定是没有token的,故一律将请求路径放行


一切准备完毕,点击按钮后,控制台直接报错


后端一切正常,能获取到并打印数据

一开始找不出原因,以为是axios的问题,但几经查找资料后发现应该是跨域问题,但是前端axios直接请求的是路径没有经过代理,问题不大,所以问题应该出现在后端,
然后突然想起这个是新的后端项目,没有跨域,所以应该要在对应的Controller控制器加@CrossOrigin


需要补充的一点是,如果不使用token且请求路径带有参数(如restful风格时),则必须要把请求路径在springsecurity的配置类中 的public void configure(WebSecurity web) 方法中放行
请求播放ID时未做以上操作:

显示仍然需要token

在这里添加不通过token 的带参数的请求路径就好了
