跨域

38 阅读2分钟

同源策略

同源策略: 同源策略是浏览器的一个安全功能,不同源的网页脚本在没有明确授权的情况下,不能读写对方资源。所谓同源是指“协议+端口+域名”三者相同

同源:当访问从一个地方访问另一个地方资源时,如果 协议+域名+端口 相同就是同源访问

跨域

什么是跨域?

跨域: 使用AJAX技术,从一个网页去请求另一个网页资源时,违反浏览器同源策略限制,引起的安全问题,成为跨域

解决跨域的方法

jsonp解决跨域

原理:script或img标签访问不同资源时不会引起跨域问题

jsonp技术就利用script标签天生可以跨域特点解决跨域问题

jsonp技术实现:

  1. 代码动态创建script标签,将请求url地址作为script标签src属性值

  2. jsonp需要服务端支持 把真正的数据封装到一个函数中一起返回

    {code:1,info:'helloworld'}
    callback({code:1,info:'helloworld'})
    

回调函数

回调函数

概念: 一个函数作为另一个函数的参数,在另一个函数中调用执行,这个函数称为回调函数

回调函数的作用:

  1. 将函数中的数据作为参数传给回调函数处理
  2. 处理异步任务的结果

异步与同步任务

现实生活中:

  • 同步操作:一个任务结束后,再处理下一个任务
  • 异步操作:多个任务同时进行

软件世界:

  • 同步任务: 等待一个任务完成后再处理下一个任务
  • 异步任务: 一个任务开始后,不等主程序执行完,继续向下执行 如:定时器、ajax网络任务