标题1 前后端分离
- 出现前后端分离的原因:为了减轻服务器的压力,需要前后端分离,静态数据单独开发一个服务器,data数据也就是动态的数据分离出一个服务器,大的图片、文件也分离一个文件服务器。所以一共分为三个服务器
标题2 解决跨域问题
- 出现跨域的原因
浏览器出于安全考虑,出现了同源策略,也就是协议、域名和端口三者必须相同,如果三者有一个不同,就会出现跨域。 - 解决方法
- 利用JSONP动态创建script标签,利用它的src属性
- CORS 跨资源共享
简单请求:
请求方式是get,post
content-type :application/x-www-form-urlencoded、multipart/form-data、text/plain
复杂请求:请求 content-type application/json是 put delete 或类型是 application/json 会先发送一个预检请求 options 先确认是否允许跨域
多发一个options请求。
缺点:跨域地址 只能配置一个 比如 号或者 具体地址,且设置为 号后,不支持携带cookie(为保证安全性) - nginx 代理跨域 同上
- nodejs本地中间件跨域
- iframe框架:iframe框架通过它的src属性也可以解决跨域
- postMessage跨域:H5中的postMessage 主要用解决 窗口之间的通讯 和 iframe的通讯
- host配置