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