lin-xin / vue-manage-system

Vue3、Element Plus、typescript后台管理系统
https://lin-xin.github.io/example/vue-manage-system/
MIT License
18.83k stars 6.02k forks source link

关于http-proxy-middleware #27

Closed 547437352 closed 7 years ago

547437352 commented 7 years ago

请问您项目中用到的这个转发插件应该怎么配置呢!本地起来是8000端口,接口端口是8080端口,应该怎么配置才不跨域呢!

lin-xin commented 7 years ago

proxyTable: { '/api':{ target:'http://localhost:8080', changeOrigin:true, pathRewrite:{ '/api':'' } } }

547437352 commented 7 years ago

今天按照您的说法,进行了修改,发现还是跨域,请您看看我哪里修改错了,或者还需要做什么? qq 20170425093245 这是我的接口文档,我接口就在本地!
qq 20170425093511 这是按照您修改之后的!
qq 20170425093548 这是我请求的方式
12312312133131231 这是dev-server 没有做任何修改

qq 20170425093641 这是接口报跨域的最后结果

@lin-xin

lin-xin commented 7 years ago

@547437352 我配置里写的 /api 是表示匹配接口以 /api 开头的,而你里面的接口是以 /holdseat 开头的,你可以试试这样 proxyTable: { '/holdseat ':{ target:'http://localhost:8080', changeOrigin:true } }

547437352 commented 7 years ago

22222222222222222 这样改还是跨域,刚才叫后台来调试,说新增的内容都能介绍到,但是sessionid接收不到!我在想是不是跨域的时候是不允许携带cookie的 @lin-xin

lin-xin commented 7 years ago

如果跨域怎么可能还接收到数据,报错信息我看看

547437352 commented 7 years ago

1232132132132132131 这是报错信息,跨域 default 这是发出的请求,把需要传递的参数传过去了,后台说能收到传过去的数据 9999 这是后台返回的码,约定9999是错误! default 这是后台报错信息 !sessionid收不到!

我刚才实验了,就是不用您的方式,直接按照没有问您以前,npm install下来的方式访问,请求也是能发出去的 @lin-xin

lin-xin commented 7 years ago

你不配置代理,不是能请求成功吗?那就不需要代理啊。。。 至于你们sessionid传不过去,你们前端怎么传,后台怎么接收,这我帮不了你们。

547437352 commented 7 years ago

好吧,感谢

547437352 commented 7 years ago

0 我尝试写成了这样, default 把接口文件的8080,改成了8000,就可以了应该是他收到 holdseat/这样的请求,虽然请求的是8000,他会把8000转发了8080上面去,8080接收到数据,然后http-proxy-middleware再把数据转发到我8000上面去!

分享出来让issues的人看到