vue-socket.io跨域问题有效解决方法

网友问题:

使用了vue-cli这个脚手架工具。在开发环境中如何配置跨域这个我懂。但是使用npm run build后,里面所有的ajax的跨域请求url都变成了根目录。
这样该如何解决部署的跨域问题?

报错信息:

Access to XMLHttpRequest at 'http://192.168.37.130:5050/socket.io/?EIO=3&transport=polling&t=N0oqNsW' from origin 'http://localhost:8080' has been blocked by CORS policy: No 'Access-Control-Allow-Origin' header is present on the requested resource.

vue-socketio.js?70bb:8 GET http://192.168.37.130:5050/socket.io/?EIO=3&transport=polling&t=N0oqNsW net::ERR_FAILED

解决办法:

//vue.config.js

module.exports = {
 devServer: {
  proxy: {
    '/socket.io': {
     target: 'http://192.168.37.130:5050',
     ws: true,
     changeOrigin: true
    },
    'sockjs-node': {
     target: 'http://192.168.37.130:5050',
     ws: false,
     changeOrigin: true
    },
  }

 }
}

以上就是我们小编整理的相关知识点,希望能够帮助到大家。

(0)

相关推荐

  • vue-socket.io跨域问题有效解决方法

    网友问题: 使用了vue-cli这个脚手架工具.在开发环境中如何配置跨域这个我懂.但是使用npm run build后,里面所有的ajax的跨域请求url都变成了根目录. 这样该如何解决部署的跨域问题? 报错信息: Access to XMLHttpRequest at 'http://192.168.37.130:5050/socket.io/?EIO=3&transport=polling&t=N0oqNsW' from origin 'http://localhost:8080' h

  • Vue 项目中遇到的跨域问题及解决方法(后台php)

    问题描述 前端 vue 框架,后台 php,百度跨域问题后台加这段代码 header("Access-Control-Allow-Origin: *"); 加了之后报这个错: The value of the 'Access-Control-Allow-Origin' header in the response must not be the wildcard '*' when the request's credentials mode is 'include'. The valu

  • vue 本地环境跨域请求proxyTable的方法

    主要在config->index.js中配置 proxyTable: { '/gameapi': { changeOrigin: true, // target: 'http://rap.id.cn/mockjs/20', mock地址 target: 'http://192.168.1.124',服务器地址 pathRewrite: { '^/gameapi': '/gameapi' }, secure:false } } 因此,发送请求时候url写为('/gameapi/gift-apply

  • Python中flask框架跨域问题的解决方法

    目录 一.跨域是什么 二.如何解决跨域问题 总结 一.跨域是什么 从一个域名去请求另一个域名,这个过程称之为跨域.浏览器从一个域名的网页去请求另一个域名的资源,域名.端口.协议有一个不一样,请求都属于跨域.跨域其实是浏览器的一个保护政策. 网页上有ajax请求时,会报:No 'Access-Control-Allow-Origin' header is present on the requested '这个错误. 二.如何解决跨域问题 1.跨域请求的过程 因此我们只要做到请求头部信息一致即可.

  • vue 处理跨域问题及解决方法小结

    当你在发送网络请求的时候,出现以下保存信息,恭喜你跨域了 Access to XMLHttpRequest at 'XXXXX' from origin 'XXXXXX' has been blocked by  CORS policy: Response to preflight request doesn't pass access control check:  No 'Access-Control-Allow-Origin' header is present on the reques

  • Vue开发中遇到的跨域问题及解决方法

    跨域是指a页面想获取b页面资源,如果a.b页面的协议.域名.端口.子域名不同,或是a页面为ip地址,b页面为域名地址,所进行的访问行动都是跨域的,而浏览器为了安全问题一般都限制了跨域访问,也就是不允许跨域请求资源. 1.jsonp 原理是:动态插入script标签,通过script标签引入一个js文件,这个js文件载入成功后会执行我们在url参数中指定的函数,并且会把我们需要的json数据作为参数传入. 由于同源策略的限制,XmlHttpRequest只允许请求当前源(域名.协议.端口)的资源,

  • 基于vue-resource jsonp跨域问题的解决方法

    最近在学习vue.js 碰到个ajax跨域请求的问题,之前知道可以用jsonp解决,但是一直没实践过,这次用发现里面好多问题,所以现在记录下来,希望可以给刚接触使用jsonp的同学一点帮助! 关于什么是jsonp,以及为什么要用jsonp我就不多说了,不明白的同学自行百度一下. 我们先来说一下jQuery里面的jsonp请求,这搞懂了 vue-resource 里面的jsonp就容易明白了. 这里我以json数据为例,首先我们通过 $.get可以直接得到一个我们想要的对象,但是用 jsonp 就

  • UEditor 编辑器跨域上传解决方法

    解决的方法: 1.在 ueditor\dialogs\internal.js 加入 document.domain = '根域名'; 2.在当前页面同样指定根域名: 复制代码 代码如下: <script type="text/javascript">    document.domain = "根域名";</script> 这样在 chrome.firefox 下没有问题,但在 ie 下还需要简单修改下 UEditor,在 editor.js

  • Angular客户端请求Rest服务跨域问题的解决方法

    1.问题描述:通过Origin是http://localhost:4200请求http://localhost:8081的服务,控制台报错如下,但是Response为200.客户端和服务端IP相同,但是端口不同,存在跨域问题. 复制代码 代码如下: XMLHttpRequest cannot load http://localhost:8081/api/v1/staffs. No 'Access-Control-Allow-Origin' header is present on the req

  • js关于getImageData跨域问题的解决方法

    在学习h5的时候,canvas标签中getImageData()报错:security error! 具体代码如下(chrome浏览器): function createGSCanvas(img){ var canvas=document.createElement("canvas"); canvas.width=img.width; canvas.height=img.height; var ctx=canvas.getContext("2d"); ctx.dra

随机推荐