|
前后端协作开发得时候确实,开发本身这件事情会让跨域有风险,但是远程协作 或者让开发这件事情更加得模块化,或者解耦得话 是需要跨域得操作的
1.安装corsheaders中间件:
- pip install django-cors-headers
复制代码
2.设置python文件中得seting文件
- INSTALLED_APPS = [
- 'django.contrib.admin',
- 'django.contrib.auth',
- 'django.contrib.contenttypes',
- 'django.contrib.sessions',
- 'django.contrib.messages',
- 'django.contrib.staticfiles',
- 'app1.apps.App1Config',
- 'API.apps.ApiConfig',
- # 让开发得API接口允许跨域
- 'corsheaders',
- ]
- MIDDLEWARE = [
- 'django.middleware.security.SecurityMiddleware',
- 'django.contrib.sessions.middleware.SessionMiddleware',
- #引入跨域设置开始
- 'corsheaders.middleware.CorsMiddleware',
- # 引入跨域设置结束
- 'django.middleware.common.CommonMiddleware',
- 'django.middleware.csrf.CsrfViewMiddleware',
- 'django.contrib.auth.middleware.AuthenticationMiddleware',
- 'django.contrib.messages.middleware.MessageMiddleware',
- 'django.middleware.clickjacking.XFrameOptionsMiddleware',
- ]
复制代码
3.前端ajx接受接口得写法
- #跨域设置
- CORS_ALLOW_ALL_ORIGINS = True
- CORS_ORIGIN_ALLOW_ALL =True
- CORS_ALLOW_HEADERS=('*')
复制代码- import { userService} from '../api/user'
- let user=ref('')
- userService({
- methon: 'GET',
- url: '/api/responseJson',
- headers: {
- 'X-Requested-With': 'XMLHttpRequest',
- 'Content-Type': 'application/json',
- }
- }).then((res) => {
- user.value=res.data
- }).catch((error) => {
- console.error = (msg, ...optionalParams) => { // 重写 console.error
- console.log(msg, ...optionalParams); // 打印到console的信息正常显示
- return false; // 返回false,使得控制台不会显示红色错误
- };
- console.error('用户接口请求失败:', error);
- })
复制代码
|
|