github仓库vue
$ cd my-project
$ npm init
$ npm install
$ npm run dev复制代码
图片自己其实不存在跨域问题,只是增长了防盗链,致使不是在白名单内的域名不能正常访问。webpack
这里对防盗链的原理作一个简单的解释,在访问图片时,会在请求里自动添加referrer字段,这个字段就是记录请求来源的域名,若是本地开发就是localhost。ios
第三方的对象存储会把referrer与设置的白名单对比,若是白名单内没有这个域名就返回403。因此,这里咱们能够在header里加入referrer=""
来跳过防盗链的限制。git
接口跨域,解决方案:jsonp、代理。github
跨域产生的缘由是因为浏览器的同源策略,对于有src属性的标签来讲,没有同源策略的限制。因此,能够利用js跨域取到数据,也就是jsonp。web
不过jsonp只支持get请求,对于post请求的数据,咱们须要用到代理。服务器之间没有同源策略的限制,因此咱们能够在本地弄一个代理服务器,请求接口。vue-router
最简单的办法就是使用http-proxy-middleware进行代理,能够经过webpack进行配置,对于vue-cli的用户来讲,在本地开发时能够在config文件夹下的index.js里配置proxyTable来进行跨域。vuex
大部分组件和业务逻辑都已经完成,下一步是根据chrome团队提出的渐进式web应用的一些最佳实践进行优化。目前只完成app shell,service worker相关的缓存和路由懒加载还在探索中。chrome