利用koa做后端,提供数据接口api,用vue-cili构建vue项目做前端,做路由控制和展示,由于他们都启动了不同端口服务,那他们的数据怎么交换的,跨域请求吗
前端build出静态文件, 后端koa利用koa-static提供静态文件访问. 或者前后单独部署, nginx配置反向代理, 比如/api开头的请求转发后端, 其它为前端
@yinxin630 谢谢,利用nginx是不是还是解决了跨域问题呀
来自酷炫的 CNodeMD
@yinxin630 undefined
@FantasyGao 当然可以解决啊,你还是没搞懂我说的意思,看这个吧:http://www.cnblogs.com/gabrielchen/p/5066120.html
我想只有用源代码来拯救你了. https://github.com/jackhutu/jackblog-api-koa
我一般使用CORS解决:
let config = { // 服务端 host host: 'http://localhost:3000', // 前端开发环境的 host webHost: 'http://localhost:8080', // 跨域白名单 whiteOrigins: [ 'http://localhost:8080', 'http://localhost:3000' ] };
然后再接口中设置响应头:
// 跨域支持 app.all('/api/*', (req, res, next) => { const origin = req.headers.origin; if (config.whiteOrigins.indexOf(origin) !== -1) { res.header('Access-Control-Allow-Origin', origin); res.header('Access-Control-Allow-Headers', 'Origin, X-Requested-With, Content-Type, Accept'); res.header('Access-Control-Allow-Credentials', true); res.header('Access-Control-Allow-Methods', 'GET, POST, PUT, OPTIONS, DELETE'); } next(); });
@yinxin630 感谢👍
@winky 谢大神,已star
@zhaomenghuan 明白了,多谢多谢
CNode 社区为国内最专业的 Node.js 开源技术社区,致力于 Node.js 的技术研究。
前端build出静态文件, 后端koa利用koa-static提供静态文件访问. 或者前后单独部署, nginx配置反向代理, 比如/api开头的请求转发后端, 其它为前端
@yinxin630 谢谢,利用nginx是不是还是解决了跨域问题呀
来自酷炫的 CNodeMD
@yinxin630 undefined
@FantasyGao 当然可以解决啊,你还是没搞懂我说的意思,看这个吧:http://www.cnblogs.com/gabrielchen/p/5066120.html
我想只有用源代码来拯救你了. https://github.com/jackhutu/jackblog-api-koa
我一般使用CORS解决:
然后再接口中设置响应头:
@yinxin630 感谢👍
来自酷炫的 CNodeMD
@winky 谢大神,已star
来自酷炫的 CNodeMD
@zhaomenghuan 明白了,多谢多谢
来自酷炫的 CNodeMD