package.json 配置代理:解决跨域问题
在 'package.json' 文件中配置代理,可以使用 'proxy' 字段来指定代理配置。以下是一个示例:
{
"name": "my-react-app",
"version": "1.0.0",
"proxy": {
"/api1": {
"target": "http://api1.example.com",
"changeOrigin": true
},
"/api2": {
"target": "http://api2.example.com",
"changeOrigin": true
}
},
"scripts": {
"start": "react-scripts start",
"build": "react-scripts build",
"test": "react-scripts test"
},
"dependencies": {
"react": "^17.0.2",
"react-dom": "^17.0.2",
"axios": "^0.22.0"
}
}
在上述示例中,'proxy' 字段是一个对象,其中每个键都是一个路径匹配规则,每个值都是一个代理配置对象。例如,'/api1' 是一个路径匹配规则,'http://api1.example.com' 是目标 URL,'changeOrigin: true' 表示是否改变请求的源。你可以根据需要添加更多的代理配置。
在这个配置中,当你的 React 应用使用 '/api1' 开头的请求时,它将被代理到 'http://api1.example.com',使用 '/api2' 开头的请求将被代理到 'http://api2.example.com'。
请注意,在使用代理配置时,你需要确保在发送请求时使用相对路径,而不是绝对路径。例如,使用 'axios' 发送请求时,应该使用 '/api1' 而不是完整 URL。
配置完成后,通过运行 'npm start' 启动开发服务器,代理配置将会生效。在开发环境中,你的请求将被代理到指定的后端服务,解决跨域问题。在生产构建中,代理配置将不会生效,因此你需要确保在生产环境中的请求不会遇到跨域问题。
原文地址: http://www.cveoy.top/t/topic/dd3r 著作权归作者所有。请勿转载和采集!