spring boot和ssm中微博socket拒绝vue连接问题二,Access-Control-Allow-Origin' header is present跨域问题

一.socket拒绝连接,可能有如下几点:
1.最有可能的:如下代码(websocketconfig)修改如下:
setAllowedOrigins("*")设置未全部;

String webSocket_url = "/websocket/socketSever";
		registry.addHandler(getWebSocketHandler(), webSocket_url).addInterceptors(new WebSocketHandShakeInterceptor()).setAllowedOrigins("*");
		String socket_JS = "/websocket/socketSever";
		registry.addHandler(getWebSocketHandler(), socket_JS).addInterceptors(new WebSocketHandShakeInterceptor()).setAllowedOrigins("*")
				.withSockJS();

2.前端socket地址是否正确:

websocket=new WebSocket("ws://localhost:8080/项目名/websocket/socketSever");
    //websocket=new WebSocket("wss://192.175.1.84:443/项目名/websocket/socketSever");
	//websocket=new WebSocket("wss://www.XXX.XXX/项目名/websocket/socketSever");//https域名访问

3.在vue的main.js中设置如下,则可将登陆对象的sessionid同步到后端

axios.defaults.withCredentials=true;

二,vue浏览器报错Access to XMLHttpRequest at ‘http://localhost:8080/NMOpticket/api/login/totalpage’ from origin ‘http://localhost:1234’ has been blocked by CORS policy: No ‘Access-Control-Allow-Origin’ header is present on the requested resource.

跨域请求失败:
1.观察config文件夹下index.js文件配置如下:(可能是第二点)

dev: {
    // Paths
    assetsSubDirectory: 'static',
    assetsPublicPath: '/',
    proxy: {
          '/api': {
              target: 'http://localhost:8080/',//后台地址
              changeOrigin: true,//异步来源
              pathRewrite: {
                  '/api': ''
              }
          }
    },
      // 开启https 访问时使用https://172.31.120.61:8081
      // https://localhost:8081 也可以访问,不过自带info请求会报错 不清楚具体原因
    //https: true,
    // Various Dev Server settings
    host: 'localhost', // can be overwritten by process.env.HOST浏览器输入的前台地址注意配置
    port: 1234, // can be overwritten by process.env.PORT, if port is in use, a free one will be determined端口号
    autoOpenBrowser: false,
    errorOverlay: true,
    notifyOnErrors: true,
    poll: false, // https://webpack.js.org/configuration/dev-server/#devserver-watchoptions-
    /**
     * Source Maps
     */
    // https://webpack.js.org/configuration/devtool/#development
    devtool: 'cheap-module-eval-source-map',

    // If you have problems debugging vue-files in devtools,
    // set this to false - it *may* help
    // https://vue-loader.vuejs.org/en/options.html#cachebusting
    cacheBusting: true,

    cssSourceMap: true
  },

  build: {
    // Template for index.html
    index: path.resolve(__dirname, '../dist/index.html'),

    // Paths
    assetsRoot: path.resolve(__dirname, '../dist'),
    assetsSubDirectory: 'static',
    assetsPublicPath: '/',

    /**
     * Source Maps
     */

    productionSourceMap: true,
    // https://webpack.js.org/configuration/devtool/#production
    devtool: '#source-map',
    // Gzip off by default as many popular static hosts such as
    // Surge or Netlify already gzip all static assets for you.
    // Before setting to `true`, make sure to:
    // npm install --save-dev compression-webpack-plugin
    productionGzip: false,
    productionGzipExtensions: ['js', 'css'],

    // Run the build command with an extra argument to
    // View the bundle analyzer report after build finishes:
    // `npm run build --report`
    // Set to `true` or `false` to always turn it on or off
    bundleAnalyzerReport: process.env.npm_config_report

2.后端拒绝了访问链接,在controller上加注解如下:
@CrossOrigin
许可跨域

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值