【django+vue】项目搭建、解决跨域访问
在Django项目中使用Vue.js时,跨域访问问题通常是前端开发中的一个常见问题。以下是一个简单的解决方案:
- 在Django项目的
settings.py
文件中添加CORS头的支持。
# settings.py
INSTALLED_APPS = [
# ...
'corsheaders',
# ...
]
MIDDLEWARE = [
# ...
'corsheaders.middleware.CorsMiddleware',
'django.middleware.common.CommonMiddleware',
# ...
]
CORS_ORIGIN_ALLOW_ALL = True
- 如果你想要更精细的控制,可以使用
CORS_ORIGIN_WHITELIST
来指定允许的域。
CORS_ORIGIN_WHITELIST = (
'http://example.com',
'http://localhost:8080',
'http://127.0.0.1:9000',
# 更多允许的域
)
- 在Vue.js项目中,确保你的API请求是正确地发送到后端服务器。如果你使用的是axios,可以在Vue实例创建时添加一个拦截器来处理跨域请求。
// main.js
import axios from 'axios';
axios.defaults.baseURL = 'http://localhost:8000'; // Django服务器的地址
new Vue({
// ...
})
这样配置后,你的Django后端应该能够接受来自Vue.js前端的跨域请求了。如果你使用的是其他的HTTP客户端或者框架,请根据相应的文档进行相应的配置。
评论已关闭