stovd
stovd
遇到了相同问题,请问怎么解决啊
> 如题,在前后端联调下载文件时遇到了这样一个问题:服务器端返回的文件为二进制流,源生请求会正常的将其作为blob对象返回,而mock则会将其转为字符串。 > **源生请求返回的data中为blob** > > **mock重写的请求返回的data中为字符串** > > > 另外,目前了解到mock完全重写了源生的XMLHttpRequest,所以在开发过程中包括未拦截的源生请求都会默认的被mock替代,请问是否可以选择一些请求使用源生方法? > 谢谢! 大佬,你是怎么解决的啊,mockRequest对象返回的是字符串,我加载音频的时候需要的是二进制流啊
一个小菜鸡来说说我的理解,产生跨域的原因是什么?当然是没有遵循同源策略啦,何为同源策略?就是协议,端口,域名,子域,都相同,就遵循了同源策略,如有一个不相同,就代表没有遵循同源策略。那么在开发中遇到的跨域情况有哪些呢? 1、前后端分离开发和部署 解决方案:本地开发时,可以使用node的代理,在测试环境和线上环境时,可以通过后端设置header,也可以搭建node监控,通过接口转发,或者通过node设置header。也可以通过nginx反向代理来做,总之就是代理了。 2、同一协议,同一端口,不同子域跨域。 解决方案:通过iframe 设置domain来解决,这种情况用得少。说不出个头头道道来。 3、第三方数据接口跨域 解决方案:可以通过jsonp来做跨域,当然这种解决方案会基于人家第三方数据接口所用的请求方式,jsonp只支持get方式,所以啦,还是回到第一种,去用代理吧。 更多跨域处理,请各位大神补充!