同步的概念应该是来自于OS中关于同步的概念:不同进程为协同完成某项工作而在先后次序上调整(通过阻塞,唤醒等方式),同步强调的是顺序性,谁先谁后,异步则不存在这种顺序性。

同步:浏览器访问服务器请求,用户看到页面刷新,重新发送请求,等请求完,页面刷新,新内容出现,用户看到新内容,进行下一步操作。

异步:浏览器访问服务器请求,用户正常操作,浏览器后端进行请求,等请求完,页面不刷新,新内容也会出现,用户看到新内容。

关于如何解决跨域:

   方法一:使用ajax的jsonp

JSONP(JSON with Padding(填充))是JSON的一种“使用模式”,可用于解决主流浏览器的跨域数据访问的问题。

其核心思想是利用JS标签里面的跨域特性进行跨域数据访问,
在JS标签里面存在的是一个跨域的URL,实际执行的时候通过这个URL获得一段字符串,
这段返回的字符串必须是一个合法的JS调用,通过EVAL这个字符串来完成对获得的数据的处理。 即: <script src='url'></script> JSONP是一个非官方的协议,它允许在服务器端集成Script tags返回至客户端,
通过javascript callback的形式实现跨域访问(这仅仅是JSONP简单的实现形式)。

简单来说就是,为了方便客户端使用数据,逐渐形成了一种非正式传输协议,也就是jsonp,该协议的一个要点就是允许用户传递一个callback参数给服务端,然后服务端返回数据时会将这个
callback参数作为函数名来包裹住JSON数据,这样客户端就可以随意定制自己发的函数来自动处理返回数据了。
方法二:前端本地proxy跨域代理配置
首先找到项目名为webpack.config.js,在里面找到decServer的配置
devServer: {
proxy: {
'/API': { // 定义代理的名称
changeOrigin: true, // 是否启动代理
target: 'http://xijipan.dev.grdoc.org', // 代理的域名
     pathRewrite: {'^/API','/'} // 如果你的真实的api路径中没有/API这一个路径,把这句加上,如果本来就有/API这一路径的话,这句一定要去掉,要不然会导致域名找不到的
}
}
},
其实,上面那种配置了之后,在配置上已经完成了,但是我们一定要记住一点,我们配置的是代理、代理、代理,既然是代理,那我们就一定要去用了才能起作用,一定要将本地用到接口请求的地
方用/API替换掉,要不然肯定不起作用啦。
方法三:谷歌插件解决跨域
在谷歌插件里面去搜索Allow CORS:Access-Control-Allow-Origin
方法四:声明header头解决跨域
CORS定义一种跨域访问机制,可以让AJAX实现跨域访问。CORS允许一个域上的网络应用向另一个域提交跨域AJAX请求。实现此功能非常简单,
只需要由服务器发送一个响应头标识即可。
当前我设置的headerwei“*”,任意一个请求过来之后服务端都可以进行处理响应,那么在调试工具中可以看到其头部信息设置,其中有一项
信息为“Access-Control-Allow-Origin:*”

Ajax同步和异步的区别,如何解决跨域的问题的更多相关文章

  1. ajax同步与异步的区别

    jquery中ajax方法有个属性async用于控制同步和异步,默认是true,即ajax请求默认是异步请求,有时项目中会用到AJAX同步.这个同步的意思是当JS代码加载到当前AJAX的时候会把页面里 ...

  2. ajax 、ajax的交互模型、如何解决跨域问题

    1.ajax是什么? — AJAX全称为“AsynchronousJavaScript and XML”(异步JavaScript和XML),是一种创建交互式网页应用的网页开发技术. — 不是一种新技 ...

  3. JQ Ajax 同步与异步的区别

    $.ajax({ url: xml_addr, type: 'get', dataType: 'xml', timeout: 1000, //设定超时 cache: false, //禁用缓存 asy ...

  4. Ajax同步和异步的区别?

    今天在code review时候看到同事的代码,用了ajax同步,async:false,如果不设置async参数,默认是true,为异步,异步的情况是比较复杂的,看下同步这个例子: function ...

  5. 前端笔记之服务器&Ajax(下)数据请求&解决跨域&三级联动&session&堆栈

    一.请求后端的JSON数据 JSON是前后端通信的交互格式,JSON(JavaScript Object Notation, JS 对象标记) 是一种轻量级的数据交换格式. JSON是互联网各个后台与 ...

  6. ajax 同步和异步的区别

    举个例子:普通B/S模式(同步)AJAX技术(异步)同步:提交请求->等待服务器处理->处理完毕返回 这个期间客户端浏览器不能干任何事异步: 请求通过事件触发->服务器处理(这时浏览 ...

  7. AJAX同步和异步的区别

    function paginationGo(page){ sendata = {"page":page}; $.ajax({ type:"POST", url: ...

  8. Ajax 是什么?Ajax 的交互模型?同步和异步的区别?如何解决跨域问题?以及 HTTP状态码

    一.Ajax 是什么: 1. 通过异步模式,提升了用户体验 2. 优化了浏览器和服务器之间的传输,减少不必要的数据往返,减少了带宽占用 3. Ajax 在客户端运行,承担了一部分本来由服务器承担的工作 ...

  9. Ajax 的概念及过程?Ajax 的交互模型?同步和异步的区别?如何解决跨域问题?

    Ajax 是什么: 1)  通过异步模式,提升了用户体验 2)  优化了浏览器和服务器之间的传输,减少不必要的数据往返,减少了带宽占用 3)  Ajax 在客户端运行,承担了一部分本来由服务器承担的工 ...

  10. AJAX是什么? AJAX的交互模型(流程)?同步和异步的区别? AJAX跨域的解决办法?

      AJAX是什么? AJAX的交互模型(流程)?同步和异步的区别? AJAX跨域的解决办法? 分类: web前端面试题2013-07-20 22:40 630人阅读 评论(0) 收藏 举报 目录(? ...

随机推荐

  1. dart+flutter中使用PaginatedDataTable分页时最后一页多出空白行问题

    使用PaginatedDataTable时解决最后一页不够当前行的话会有很空白行的问题 解决的场景: 比如下图,28行数据,每页5行最后一页会多出两行空白. 解决方法: 可以使用PaginatedDa ...

  2. [转]idea 试用30天“无限续费”idea破解

    首先打开idea设置 左上角点击file-->setting-->Plugins   https://plugins.zhile.io 然后点击 确定 ("OK") 点 ...

  3. 国产低功耗Soc蓝牙语音遥控器芯片HS6621 指纹锁、体脂称等应用方案

    随着物联网技术不断发展,家用电器往智能化方向持续迭代,使用红外遥控器这种传统的互动方式已经满足不了实际的使用需求,蓝牙语音遥控器作为人机交互新载体,逐渐取代传统红外遥控器成为家居设备的标配.相比于传统 ...

  4. MySQL连接提示 public key retrieval is not allowed

    使用DBeaver连接mysql数据提示public key retrieval is not allowed 修改DBeaver的驱动属性中的allowPublicKeyRetrieval

  5. TS补充笔记

    TS掘金笔记:https://juejin.cn/post/6872111128135073806    *为疑惑点 类型总结: 2.6.1Enum类型数字枚举设置初始值: 2.6.1.1给第一个枚举 ...

  6. ThinkPHP接收header自定义参数

    // 请求拦截,配置Token等参数 Vue.prototype.$u.http.interceptor.request = (config) => { config.header['conte ...

  7. 福昕PDF如何以多个窗口打开文件

    福昕PDF默认设置下双击打开多个文件,所有文件只会在同一个程序内显示,怎样让每个文件都使用单独一个程序,以多个窗口的形式打开呢? 福昕软件,文件 > 偏好设置 > 文档 > 勾选&q ...

  8. C#中socket的简单使用

    一.Socket的概念Socket其实并不是一个协议,而是为了方便使用TCP或UDP而抽象出来的一层,是位于应用层和传输控制层之间的一组接口. 当两台主机通信是,必须通过Socket连接,Socket ...

  9. csp-s2020 T2 动物园

    题目简述: 共有n个动物,m条要求,每条要求描述了第x位上是1的话,必须购买y饲料,动物园里已有的动物必须的饲料已经购买了,问题是:在不要求增加购买饲料的基础上,还能放进去多少种动物?共有k个二进制, ...

  10. windows server的应用软件限流QoS

    原因: 生产环境中程序员写的redis调用方法有逻辑问题, 导致流量高达800~900Mbps导致服务器其它网络服务有丢包现象, 他又有别的项目紧急需要修改,只能通过系统自带的QoS临时限流控制. 1 ...