zoukankan      html  css  js  c++  java
  • vue本地跨域实现与原理

    1、实现

    使用vue搭建的项目在本地与后端联调时,因为是使用node运行服务器,IP与后端不一致,所以会产生跨域问题,需要使用如JSONP、跨域代理等手段进行跨域请求,而vue已经帮我们配置好了,只需要设置一下proxyTable就行。
    1.1、使用proxyTable代理

    文件路径如下,在项目根目录下的config文件夹中的index.js中
    在这里插入图片描述

    配置代码如下

    dev{
        proxyTable: {
          '/api': {
            target: 'http://192.168.0.1:200', // 要代理的域名
            changeOrigin: true,//允许跨域
            pathRewrite: {
              '^/api': '' // 这个是定义要访问的路径,名字随便写
            }
       }
    }


    使用时代码

     // /api/getMenu相当于*http://192.168.0.1:200/getMenu
     // /api相当于http://192.168.0.1:200
     this.$http.get("/api/getMenu", {
     }
     .then(res => {
     })
     .catch(function(error) {
     });


    1.2、注意事项

    以上面代码设置的为例,会把请求中所有带有/api字段的都替换掉,例如api/getMenu/api,前后两个都会被替换,导致404等错误,在代理数量比较多的时候容易出现这个问题。
    2、proxyTable原理

    浏览器是禁止跨域的,但是服务端不禁止,在本地运行npm run dev等命令时实际上是用node运行了一个服务器,因此proxyTable实际上是将请求发给自己的服务器,再由服务器转发给后台服务器,做了亦曾代理,因为不会出现跨域问题。
    ————————————————
    原文链接:https://blog.csdn.net/weixin_44849078/article/details/90450263

  • 相关阅读:
    aodquery,clientdataset数据控件之间的速度区别
    centos防火墙相关
    centos安装jdk,精简
    delphi 操作excel复制区域功能呢
    centos安装redis,最靠谱的教程
    图像识别,借助百度云,上传图片实现逻辑
    LinkedHashmap和HashMap对比以及说明
    Windows环境下Zookeeper安装和使用
    你不知道的JavaScript--Item1 严格模式
    jQuery学习之旅 Item2 选择器【二】
  • 原文地址:https://www.cnblogs.com/hlyin/p/15599867.html
Copyright © 2011-2022 走看看