同源策略&跨域
同源
本质:同源指的是两个URL地址具有相同的协议、主机名、端口号
同源策略
本质:是浏览器提供的一个安全功能,同源策略规定不允许非同源的URL之间进行资源的交互
跨域
本质:同源就不跨域,跨域就是不同源
根本原因:浏览器的同源策略不允许非同源的URL之间进行资源的交互
浏览器对跨域的拦截过程
本质:浏览器允许发起跨域请求,当时请求回来会被浏览器拦截,页面无法显示
突破跨域限制方案
JSONP和CORS是两种解决方案
注意:JSONP在实际开发很少用,CORS是主流解决方案
CORS
本质:是解决跨域数据请求的终极解决方案
注意:
1.需要浏览器和服务器同时支持下
2.浏览器支持CORS功能(主流浏览器全部支持)
3.服务器开启CORS功能(需要后端为借口开启CORS功能)
JSONP
跨域目的 :拿到后端的数据(前后端跨域 不同源 直接发送Ajax请求失败)
<script>
function show(option){
let str = option.message
console.log(str);
}
</script>
<script src="http://www.itcbc.com:3006/api/getscript2"></script>
总结:
1.script标签的src属性不受同源策略的影响 跨域
2.浏览器对script的支持:
允许它下载指定路径的JS代码(JS代码 由后端程序员来设定它的内容)
show({data:["a","b"]})=>show是后端命名的 show中传递了真正的数据
而且还会执行JS代码
前端需要自己来定义 show方法的内容 指我前端的业务逻辑
Git
问题:
1.实际开发,多人协作开发项目,如何将多人写的代码合并
2.代码经常该来该去,修改就无法找回之前代码,程序员应该纪律每一次代码的变化,纠结于回到历史版本查看或直接使用
版本管理系统
作用:
记录每一次代码的变更,以便查阅特定版本的修改情况
完成多人协作(必须配合远程仓库)
Git的使用
查看版本
git --version
设置个人信息
git config --global user.name "xxx"
git config --global user.email "xxx"
查看设置个人信息
git config --global user.name
git config --global user.email
初始化Git仓库
git init
添加到暂存区
git add .
提交本地仓库
git commit -m "完成了登录功能"
版本回退
查看版本信息
git reflog
切换版本
git reset --hard 版本号
查看日志命令
1.常规查看
git log
2.精简查看
git log --oneline
3.完整查看
git reflog
分支
1.查看分支
git branch
2.创建分支
git branch dev
3.切换分支
git checkout 分支名称
4.切换回主分支,再执行分支合并
git merge 分支名称
5.删除分支
git branch -d dev
分支合并冲突
克隆远程仓库到本地
1、登录Gitee,创建本地仓库
2、输入名称其他不动
3.复制HTTPS地址待克隆
4.在准备好的文件夹右键打开终端
5.输入git clone+空格+复制的http
6.输入gitee账户密码