首页 新闻 会员 周边 捐助

websocket+springboot,vue+sockjs,如何解决跨域?

0
悬赏园豆:50 [已解决问题] 解决于 2020-07-07 10:43

websocket+springboot,vue+sockjs,如何解决跨域?
springboot+wesocket作后端,使用vue+sockjs作前端,前后端分离,链接后端路径一直报跨域问题,我想向您请教一下如何实现sockjs前端跨域的问题?反向代理的话如何配置?

小阿飞小蝴蝶的主页 小阿飞小蝴蝶 | 初学一级 | 园豆:72
提问于:2020-01-16 00:44
< >
分享
最佳答案
0

1、nginx 配置, 通过代理转发到跨域的域名
2、跨域会有OPTIONS预检(会发送两个请求,一次是OPTIONS ,一次是真正的请求)

后端处理 遇到options 请求时 可以返回 response header 
Access-Control-Allow-Origin:*
Access-Control-Allow-Headers:Content-Type,AccessToken,X-CSRF-Token, Authorization, Token
Access-Control-Allow-Methods:POST, GET, OPTIONS, PUT, PATCH, DELETE

并返回http status :2XX

3、jsonp

收获园豆:35
xiaobaiskill | 小虾三级 |园豆:1122 | 2020-01-16 22:42
其他回答(3)
0

jsonp格式就好了

收获园豆:15
小小咸鱼YwY | 园豆:3312 (老鸟四级) | 2020-01-16 10:07
0

继承 :WebMvcConfigurationSupport

重写 addCorsMappings

  @Override
    public void addCorsMappings(CorsRegistry registry) {
        registry.addMapping("/**")
                .allowedOrigins("*")
                .allowedMethods("GET", "POST", "PUT", "OPTIONS", "DELETE", "PATCH")
                .allowCredentials(true).maxAge(3600);
    }
悟行 | 园豆:12559 (专家六级) | 2020-01-17 14:38
0

用CorsRegistry就行

计算机的探索者 | 园豆:208 (菜鸟二级) | 2020-01-20 01:13
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册