美文网首页前端大杂烩
webpack proxyTable的代理跨域

webpack proxyTable的代理跨域

作者: this_smile | 来源:发表于2017-11-02 16:13 被阅读0次

    在开发中,经常遇到这样一个问题:



    可是每次都是通过后端程序员通过设置header来解决的。可是现在我的开发中有这么一个问题,一个项目工程后台有无数个,然而不能让每个后台去帮我设置,这个跨域问题必须要我前端解决。所以我百度查找到了用proxyTable来做代理的方法。

    1、首先在文件夹config下面找到index,然后找到proxyTable,你会看到


    它默认是为空的。

    2、ProxyTable的参数:

    context:确定当请求匹配到哪些字段的时请求被代理

    options

    • options.target:要与url模块解析的url字符串
    • option.forward:要用url模块解析的url字符串
    • option.agent:要传递到http(s)的对象.request(请参阅节点的
      https代理http代理对象)
    • option.ssl:要传递给https.createServer()的对象
    • option.ws:true/ false:如果要代理websockets
    • option.xfwd:true / false,添加x-forward标头
    • option.secure:true / false,如果要验证SSL Certs
    • option.toProxy:true / false,将绝对URL传递给path(用于代理代理)
    • option.prependPath:true / false,默认值:true - 指定是否要将目标路径添加到代理路径
    • option.ignorePath:true / false,默认值:false - 指定是否要忽略传入请求的代理路径(注意:如果需要,您将必须附加/手动)。
    • option.localAddress:绑定传出连接的本地接口字符串
    • option.changeOrigin:true / false,默认值:false - 将主机头的起始位置更改为目标URL
    • option.auth:基本认证,即'user:password'来计算授权头。
    • option.hostRewrite:重写(301/302/307/308)重定向上的位置主机名。
    • option.autoRewrite:根据请求的主机/端口重写(301/302/307/308)重定向的位置主机/端口。默认值:false。
    • option.protocolRewrite:将(301/302/307/308)上的位置协议重写为“http”或“https”。默认值:null。
    • option.cookieDomainRewrite:重写set-cookie标题的域。可能的值:false(默认):禁用cookie重写String:例如,新cookieDomainRewrite: "new.domain"。要删除域,请使用cookieDomainRewrite: ""。
      对象:将域映射到新域,用于"*"匹配所有域。例如,保持一个域不变,重写一个域并删除其他域:
    cookieDomainRewrite: {
    "unchanged.domain": "unchanged.domain",
    "old.domain": "new.domain",
    "*": ""
    }
    

    3、运用例子

    • 代理一个接口:
    proxyTable: {
      '/chaos' : {
        target:" http://172.32.11.23:10191 ",
        changeOrigin: true,
        pathRewrite: {
            ' ^/chaos ' : '/chaos'
          }
       }
    }
    
    • 代理多个接口:
    proxyTable: {
      '/chaos' : {
        target:" http://172.32.11.23:10191 ",
        changeOrigin: true,
        pathRewrite: {
            ' ^/chaos ' : '/chaos'
          }
       },
      '/insight' : {
        target:" http://172.43.11.33:8080 ",
        changeOrigin: true,
        pathRewrite: {
            ' ^/insight ' : ''
          }
       }
    }
    

    相关文章

      网友评论

        本文标题:webpack proxyTable的代理跨域

        本文链接:https://www.haomeiwen.com/subject/opaopxtx.html