前端测试题:(解析)关于ajax跨域的说法,下面错误的是?
考核内容:ajax跨域异步操作数据
题发散度: ★★
试题难度: ★★
解题思路:
Ajax的全称是Asynchronous JavaScript and XML
- Ajax 是什么?
答:Ajax是一种可以在浏览器和服务器之间使用异步数据传输(HTTP请求)的技术。使用它可以让页面请求少量的数据,而不用刷新整个页面。而传统的页面(不使用Ajax)要刷新部分内容,必须重载整个网页页面。
- Ajax 基于什么?
答:它基于的是XMLHttpRequest(XHR)。这是一个比较粗糙的API,不符合关注分离的设计原则(Separation of Concerns),配置和使用都不是那么友好。
- $.ajax 的产生背景?
答:基于上面的原因,各种ajax库引用而生,然而最有名的就是jQuery的API中的 .ajax() 。.ajax() 它的一个优势异步操作,但jQuery的异步操作是基于事件的异步模型,没有promise那么友好。
- fetch 产生的背景?
答:综合上面所讲的各种因素,fetch这个api应运而生。fetch接口是用来解决Ajax(xhr)在写法和调用上的不合理和开放的js接口,Fetch 是浏览器提供的原生 AJAX 接口。使用 window.fetch 函数可以代替以前的 .ajax、.get 和
- 什么是同源?
答:协议、域名、端口都相同的网站就是同源网站,否则就是非同源。 ajax只要是同源就不需要考虑跨域限制。
- 为什么要跨域?
答:ajax不能向非同源服务器发送请求。其实请求可以发送出去,但是浏览器会拒绝接收响应。如何解决这个问题呢?这就是跨域的解决方案
三种方案分别是:代理,CORS(跨域资源共享),JSONP
CORS是一个W3C标准,全称是"跨域资源共享"(Cross-origin resource sharing)。
因为出于安全的考虑, 浏览器不允许Ajax调用当前源之外的资源. 即浏览器的同源策略.
CORS需要浏览器和服务器同时支持。目前,所有主流浏览器都支持该功能,在浏览器端, 整个CORS通信过程,都是浏览器自动完成,不需要用户参与。对于开发者来说,CORS通信与同源的AJAX通信没有差别,代码完全一样。
jquary 只是封装了AJAX的方法,即使不加载jquery也可以实现AJAX
答案:错误的是
D. AJAX是一种技术,或者说是一种思想,
用来实现异步刷新,使用时必须加载JQUERY。
常见考试类型:
- 什么是AJAX,为什么要使用Ajax?
- AJAX应用和传统Web应用有什么不同?
- 请介绍一下XMLhttprequest对象?
- Ajax的实现流程是怎样的?
- AJAX请求总共有多少种CALLBACK?
- AJAX有哪些有点和缺点?
- 请解释一下 JavaScript 的同源策略?
- 阐述一下异步加载JS?
- 如何解决跨域问题?
- Ajax 解决浏览器缓存问题?
- MySQL自增列主从不一致的测试(r12笔记第37天)
- 分享Mac/Linux系统Shell终端利器SecureCRT以及注册破解方法
- MySQL中GTID和自增列的数据测试(r12笔记第38天)
- 分享一个入门级可控多线程shell脚本方案
- PhalGo-介绍
- 实测Nginx服务器开启pagespeed加速效果
- MySQL频繁停库的问题分析(r12笔记第33天)
- 解决Nginx Helper插件一键清理缓存功能导致网站打不开问题
- Oracle 12c DBCA浅析(r12笔记第48天)
- MySQL中的derived table(r12笔记第47天)
- Oracle数据库端口突然无法访问的分析(r12笔记第46天)
- MySQL中的反连接(r12笔记第45天)
- Nginx配置多站点下的Proxy_cache或Fastcgi_cache缓存加速
- MySQL主从不一致的细小问题分析(r12笔记第62天)
- JavaScript 教程
- JavaScript 编辑工具
- JavaScript 与HTML
- JavaScript 与Java
- JavaScript 数据结构
- JavaScript 基本数据类型
- JavaScript 特殊数据类型
- JavaScript 运算符
- JavaScript typeof 运算符
- JavaScript 表达式
- JavaScript 类型转换
- JavaScript 基本语法
- JavaScript 注释
- Javascript 基本处理流程
- Javascript 选择结构
- Javascript if 语句
- Javascript if 语句的嵌套
- Javascript switch 语句
- Javascript 循环结构
- Javascript 循环结构实例
- Javascript 跳转语句
- Javascript 控制语句总结
- Javascript 函数介绍
- Javascript 函数的定义
- Javascript 函数调用
- Javascript 几种特殊的函数
- JavaScript 内置函数简介
- Javascript eval() 函数
- Javascript isFinite() 函数
- Javascript isNaN() 函数
- parseInt() 与 parseFloat()
- escape() 与 unescape()
- Javascript 字符串介绍
- Javascript length属性
- javascript 字符串函数
- Javascript 日期对象简介
- Javascript 日期对象用途
- Date 对象属性和方法
- Javascript 数组是什么
- Javascript 创建数组
- Javascript 数组赋值与取值
- Javascript 数组属性和方法