Skip to content

解决跨域问题 #18

@wolong438

Description

@wolong438

前后端部署成功后,会发现前端页面获取后端数据时,会出现跨域问题。翻阅服务端的代码,是可以看到是有处理跨域的(header.set('Access-Control-Allow-Origin', '*')),但是并没有生效。
解决跨域问题的几种常规方式:后端header加跨域设置(没生效),前端使用代理(开发环境有效,生产环境无效),使用nginx代理(生产、开发环境都可以)。
出于仅仅研究项目的目的,此处采用前端代理的方式,如下:
打开前端neteasemusic/src/main.js文件,做出以下修改
//axios.defaults.baseURL = 'http://localhost:3000/v1/';
axios.defaults.baseURL = '/api';
打开前端neteasemusic/config/index.js文件,做出以下修改
proxyTable: {
"/api": {
target: "http://localhost:3000/v1/", //设置你调用的接口域名和端口号
changeOrigin: true, //跨域
pathRewrite: {
"^/api": "/"
}
}
}

最后,重启前端项目就行了,跨域问题解决了。

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions