react引入网页跨域问题
emer 发布于 2019-7-15 10:07 2695 次阅读
遇到这样一个需求,react重构网站时,暂时需要引入其他域名网站详情,如果直接引入肯定会因为没有cookie引入页面跳转登录页面,首先我们用api代理网页,不会有跨域问题,其次防止网站重新登录,那么我们需要将cookie重写,我的配置如下:
const str="http://ningli.win/"
app.use(proxy(['/api','/js','/css'], { target:str,changeOrigin:true, pathRewrite:{ "^/api":"/", }, cookieDomainRewrite: { "*": "" } }));
如上我们 iframe src="/api/post/12" ---->转发到 ningli.win/post/12
如上我们成功引入了ningli.win网页下的网址,但是问题来了,你会发现所有资源无法引入,原因是iframe内的/js,/css被转发到了 locahost的根目录,
localhost/js,/css肯定是找不到的,所以我们需要将/js,/css重写到原来的所以如下:
const str="http://ningli.win/"
app.use(proxy(['/api','/js','/css'], { target:str,changeOrigin:true, pathRewrite:{ "^/api":"/", "^js":"/", "^css":"/" }, cookieDomainRewrite: { "*": "" } }));
我们解决了这个问题