axios前后端交互

安装

一定要安装到`项目目录下

cnpm install axios
配置

在main.js中配置

//配置axios
import axios from 'axios'
Vue.prototype.$axios = axios;
在组件中发送ajax请求
created(){
//发送axios请求
this.$axios({
url:this.$settings.base_url+'/cars/',
method:'get',
params:{
}
}).then(response => { //请求成功成功之后执行
this.cars = response.data;
}).catch(error => { //当网络状态码为4xx,5xx时执行
console.log(error.response)
});
},

错误信息都在error.response中

params:{}url拼接参数:任何请求都可以携带

data:{}数据包参数 get请求无法携带data参数

CORS跨域问题(同源策略)

django默认只对同源做响应(同源策略),存在跨域问题.

同源

http协议相同,ip服务器地址相同,app应用端口相同,三个都相同才叫同源.

跨域

http,ip,post三个有一个不同,就是跨域.

解决跨域问题

1)Django按照cors模块:
>: pip install django-cors-headers 2)在settings注册模块,配置中间件:
INSTALLED_APPS = [
...
'corsheaders'
]
MIDDLEWARE = [
...
'corsheaders.middleware.CorsMiddleware'
] 3)在settings开启允许跨越:
CORS_ORIGIN_ALLOW_ALL = True

js全局配置

assets的js文件下设置settings全局js文件

export default{
base_url:'http://127.0.0.1:8000'
}

mian.js中配置全局js

//配置全局js
import settings from '@/assets/js/settings'
Vue.prototype.$settings = settings;

然后就可以在全局使用

this.$axios({
url:this.$settings.base_url + `/car/${pk}/`
}).then(response =>{
this.car = response.data
}).catch(error =>{
console.log(error.response)
})

最新文章

  1. Python流程控制语句
  2. OWASP WEB会话管理备忘单 阅读笔记
  3. 自定义ImageView回调实现手动改变圆环大小
  4. 【News】SpagoBI中国官方微信对外发布
  5. Bad apple for CSharp
  6. awt组件中文乱码Intellij解决
  7. Implement Trie (Prefix Tree) 解答
  8. Hadoop之初体验
  9. IOS 上线问题
  10. UWP应用程序使用Prism框架构建MVVM
  11. 使用wordpress搭建独立域名的个人博客或网站
  12. 前端学习之jquery/下
  13. Android监听手机网络变化
  14. BlockingQueue 阻塞队列实现异步事件
  15. 最大熵模型(MEM)
  16. python 全栈开发笔记 4
  17. django 中的闪现
  18. Java8中的 lambda 和Stream API
  19. vue.js面试题整理
  20. mysql 添加用户

热门文章

  1. cycloneii normal mode vs. arithmetic mode
  2. SQL中的long text
  3. Autowire(自动装配)机制
  4. 推荐5款超实用的.NET性能分析工具
  5. vue.js组件的个人总结
  6. List -- 循环操作
  7. 长按触发(PC端和移动端)
  8. HZOI2019序列
  9. Make the Most (Hackerrank Codeagon)
  10. PAT甲级——A1011 World Cup Betting