参数:
url: 要求为String类型的参数,(默认为当前页地址)发送请求的地址。
type: 要求为String类型的参数,请求方式(post或get)默认为get。注意其他http请求方法
timeout: 要求为Number类型的参数,设置请求超时时间(毫秒)。此设置将覆盖$.ajaxSetup()方法的全局设置。
async:要求为Boolean类型的参数,默认设置为true,所有请求均为异步请求。如果需要发送同步请求,请将此选项设置
为false。注意,同步请求将锁住浏览器,用户其他操作必须等待请求完成才可以执行
data: 要求为Object或String类型的参数,发送到服务器的数据。如果已经不是字符串,将自动转换为字符串格式。
get请求中将附加在url后。防止这种自动转换,可以查看processData选项。对象必须为key/value格式,
dataType: 要求为String类型的参数,预期服务器返回的数据类型。如果不指定,JQuery将自动根据http包mime信息返回
responseXML或responseText,并作为回调函数参数传递
后端跨域
有src属性的标签都可以跨域
实现跨域的三种方式:
利用iframe实现
利用jsonp
利用cors实现
查看头部信息:调出控制台,ctrl+r(网络-fetch/XHR)
如果里面有ip地址或Access-control-Allow-Origin:*;代表可以跨域访问,没有的话代表无法访问
*:所有人都可以访问
ip:只有指定ip地址可以访问
jsonp:
jsonp是一种非官方的跨域数据交互协议,jsonp(json with padding);由于同源策略的限制XmlHttpRequest只能请求
当前源(域名、协议、端口)需要通过jsonp方式进行跨域
jsonp原理:
script标签src属性中的链接可以访问跨域脚本。利用这个特性服务器不再返回json格式的数据,而是放回一段调用某个
函数的js代码,在src中实现跨域

cors介绍:
. CORS是一个W3C标准,全称是"跨域资源共享"(Cross-originresource sharing) 。
整个CORS通信过程,都是浏览器自动完成,不需要用户参与。CORS通信与同源的AJAX通信没有差别,
·实现CORS通信的关键是服务器。只要服务器实现了CORS接口,就可以跨源通信。
简单请求
Access-Control——Allow-Credentials:该字段可选,表示是都允许发送Cookie
Access-Control-Expose-Headers:字段可选,CORS请求时在内部指定
使用jqueryAjax跨域需要加上三个参数
dataType: "jsonp",
jsonp:"callback",
jsonpCallback: "jsonpCallback",
跨域postMessage()
介绍:window.postMessage()方法可以安全地实现跨源通信。通常,对于两个不同页面的脚本,只有当执行它们的
页面位于具有相同的协议(通常为https),端口号(443为https的默认值),以及主机(两个页面的模数Document.domain
设置为相同的值)时,这两个脚本才能相互通信。window.postMessage()方法提供了一种受控机制来规避此限制,只要
正确的使用,这种方法就很安全
用法:Window.postMessage(): window.postMessage()方法被调用时,会在所有页面脚本执行完毕之后(e.g.,
在该方法之后设置的事件、之前设置的timeout事件,etc.)向目标窗口派发一个MessageEvent消息。
该MessageEvent消息有四个属性需要注意:
. message属性表示该message的类型
. data属性为window.postMessage 的第一个参数
.origin属性发送消息窗口的源(协议+主机+端口号)
. source属性记录调用window.postMessage()方法的窗口信息
接口地址:https:
http和https的区别
http:超文本传输协议,默认端口号是80
https:是在http协议的基础上加了一层ssl加密协议,默认的端口是443
FormData对象:
FormData是XMLHttpRequest Level2新增的一个对象,他是来提交表单、模拟表单提交,优势是可以上传二进制文件
方法的介绍
append:用于向 FormData对象中添加键值对
set():设置对应的键key对应的值 value(s)
delete():接收一个参数,表示你要删除的 key值的名字,如果有多个相同key 值,会一并删除:
get()和 getAll():接收一个参数,表示需要查找的key 的名称,返回第一个该key对应的value值。如果有多个相同
的key,而且要返回所有的这个key 对应的value值。
has():该方法也接收一个参数,同样是key的名称,返回一个Boolean值,用来判断FormData对象是否含有该key。
keys():该方法不需要接收参数,返回一个迭代器,通过这个迭代器,我们可以遍历FormData对象中所有的 key。
values():有遍历key的迭代,当然也就少不了遍历value的迭代器了。
entries()是返回一个包含键值对的迭代器
多权限验证:
在登陆时新增一个值,根据不同值展示不同页面