一个解决跨域问题的代理小工具

Posted 一只猫

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了一个解决跨域问题的代理小工具相关的知识,希望对你有一定的参考价值。

【问题描述】

之前调用聚合数据的API的时候,前端不能直接请求聚合给的API,提示出现跨域问题,所以一开始就想怎么解决这个问题,一开始想用jsonp来解决,但是搞了半天仍然不行。查了原因发现要想使用jsonp还得后端支持,也就是说后端如果没有使用jsonp,前端是不管怎样都不能用。

【解决】

卧槽那咋办?后面我就想,写个代理吧,反正自己的网站要使用node,于是就用node+express写了个代理服务器,把前端的请求转发给聚合数据再把结果返回再整理成jsonp格式,然后前端再用jsonp请求,当时写的时候端口用的跟我的网站后台端口不一样,所以还是要用jsonp请求。后面我想了想,我去傻逼了,直接搞个透明转发不就行了,弄得这么麻烦。基本原理就是把聚合数据的API接口映射成本地的一个接口,譬如http://v.juhe.cn/toutiao/index映射成本地的‘/api/news‘,这样请求的时候直接请求‘api/news‘,然后请求就会转发到聚合,聚合再返回数据,返回的数据可以直接获取到。这个时候我也正在和我同学开发一个网站,我访问他写的后端API的时候,也出现跨域,这个工具恰好解决了这个问题。分享出来希望能帮到大家,如果有问题欢迎跟我反馈,本人菜鸟一枚,有不对的地方还请大大们指教。

【工具地址】

node-proxy

以上是关于一个解决跨域问题的代理小工具的主要内容,如果未能解决你的问题,请参考以下文章

使用nginx代理解决跨域问题

nginx 代理解决跨域问题

说说webpack proxy工作原理?为啥能解决跨域

前端开发用nginx代理服务器解决服务器跨域问题及跨域访问https访问(mac系统下)

宝塔面板Nginx反向代理解决跨域问题

vue的开发模式跨域解决方案和代理配置