本项目使用vue-cli#webpack 模板来进行构建,对模板做了以下修改
在build入口文件,build/dev-server.js
中,屏蔽末尾的以下代码
// when env is testing, don't need open it
// if (process.env.NODE_ENV !== 'testing') {
// opn(uri)
// }
在调用知乎提供的 Api 时,遇到了跨域的问题。于是尝试使用 jsonp 来解决,但是发现并不可行。 谷歌了一计发现vue-cli的config文件可以配置proxyTable,继续找到http-proxy-middleware。配置起来很简单:
'/api': {
target: 'http://news-at.zhihu.com', //请求目标
changeOrigin: true, //跨域支持
pathRewrite: { //路径匹配
'^/api': ''
}
}
这样就不会有跨域问题了,当然这只适用于开发环境。
在中转服务器上开一个Node进程并开启跨域来提供API转接,见api.server.js
有需求的可以利用,至于地址和端口请看源码吧(小水管,别玩坏了~~)