写在后面:
能胜利跨域的前提是:本地跑我的项目的端口须要与后盾接口容许跨域的端口统一(这一条几乎是血泪的教训)
以vue + webpack跨域代理为例:
我本地(localhost想要申请的接口地址为https://baidu.com/bus/graph/b...)
proxy: { '/build': { target: 'https://baidu.com/bus/graph', logLevel:'debug',//运行时将本地发动的地址和对应指向的地址打印输出 changeOrigin: true,//容许跨域 }},
proxy的key值为:'/build',用来匹配你本地发动申请的地址,即本地的localhost:8080会被替换为target地址
如果你本地发动申请的地址为:localhost:8080/build 那代理拜访的理论地址为:https://baidu.com/bus/graph/b...
而后你能够做如下批改:
proxy: { '/build': { target: 'https://baidu.com/bus/graph', logLevel:'debug',//运行时将本地发动的地址和对应指向的地址打印输出 changeOrigin: true,//容许跨域 pathRewrite:{//重写本地发动的门路 '^/graph':"" } }},
如果你本地发动申请的地址为:localhost:8080/graph/build ,门路重写会将你发动地址的/graph/build==>/build,代理拜访的理论地址为:https://baidu.com/bus/graph/b...
pathRiwrite更多在无奈仅仅应用一个代理切门路有蕴含的时候比拟实用