一:跨域问题
1、同源策略(浏览器的安全策略)
只允许当前页面朝当前域下发请求,如果向其他域发请求,请求可以正常发送,数据也可以拿回,但是被浏览器拦截了
2、cors:只要服务器实现了CORS,就可以实现跨域资源共享
(1)简单请求
只发一次请求
(2)非简单请求:
发两次请求:一次预检(OPTION请求),只有服务端允许发请求,才能继续发第二次正常请求,一次真正的请求
3、服务端如何处理:
(1)写在中间件中:
from django.utils.deprecation import MiddlewareMixin
class MyCorsMiddle(MiddlewareMixin):def process_response(self,request,response):# 简单请求:# 允许http://127.0.0.1:8001域向我发请求# ret['Access-Control-Allow-Origin']='http://127.0.0.1:8001'# 允许所有人向我发请求response['Access-Control-Allow-Origin'] = '*'if request.method == 'OPTIONS':# 所有的头信息都允许response['Access-Control-Allow-Headers'] = '*'return response
(2)在setting中配置中间件即可
二:创建vue项目
1、创建vue项目:
(1)安装node.js
(2)vue脚手架
(2)项目名字:vue create
(4)pycharm开发vue项目:
需要安装vue.js插件
setting--->plugins--->左下方install---->去搜索---->下载--->重启
(5)运行vue项目
editconfigration--->+--->npm--->run serve
2、vue目录结构:
node_modules:项目依赖(以后项目要传到git上,这个不能传)
publish--->index.html 是总页面
src:项目
assets:静态资源
components:组件
views:视图组件
APP.vue:根组件
main.js :总的入口js
router.js :路由相关,所有路由的配置,在这里面
store.js :vuex状态管理器
package.json:项目的依赖,npm install 是根据它来安装依赖的
3、每个组件会有三部分:
(1)template
(2)style
(3)script
三:axios的使用