面试 | Ajax--进阶(能认真的都答对了,你就真的会ajax了)

(能认真的都答对,你就真的理解了)(1-3没答案)

1.什么是Ajax?

2.Ajax是干什么的,有什么优点?

3.Ajax的核心对象是什么?如何创建其核心对象,以及其兼容性?

4.简要的说明Ajax的操作步骤?

=======关于Ajax代码中属性的问题(大家业一下,这是属性)======

简要说明这些属性的作用:
readyState -============ 服务器端的响应状态
status - ============ 服务器端状态码
responseText -============ 服务器端返回的文本内容
responseXML - ============服务器端返回的XML格式数据

=======关于Ajax代码中方法的问题(大家业一下,这是方法)======

简要说明这些方法的作用:

    abort() - 取消请求
    getAllRequestHeaders() ============获取响应的所有http头
    getRequsetHeader() - ============获取指定响应的http头
       setRequestHeader() -============ 设置指定请求的http头
    open(method,url) -============ 创建链接
            method:get/post(常用)
    send() - ============发送链接
            如果open的method为get,send里的参数为null

=======关于Ajax代码中事件的问题(大家业一下,这是方法)======
onreadystatechange - 监听事件
当服务器的状体改变时就会触发该事件(readyState);

=========必须会=======

1.一个完整的HTTP请求,有几个步骤,分别是?

建立TCP连接

web浏览器向web服务器发送请求命令

web浏览器发送请求头信息

web服务器应答

web服务器发送应答头信息

web服务器向浏览器发送数据

web服务器关闭TCP连接

2.简要说明get和post的区别?

*GET:一般用于信息获取,用get请求-->查询或获取的操作

使用URL传递参数

对所发送信息的数量有限制,一般在2000个字

*POST:

一般用于修改服务器上的数据.比如:新建,修改,删除,发送表单数据

 对所发送信息的数量无限制

3.简要说明同步和异步的区别?同步请求和异步请求的概念?

同步是指:发送方发出数据后,等接收方发回响应以后才发下一个数据包的通讯方式。

异步是指:发送方发出数据后,不等接收方发回响应,接着发送下个数据包的通讯方式。

同步请求:

客户端请求(等待)->服务端处理->响应->页面载入

(缺少对象:XMLhttpRequest)
这时候如果有错误,只能再次发送请求,再次等待

异步请求:

比如当你填写邮箱地址的时候,页面当时就把邮箱地址发送到了服务器(也就是页面发送了一个请求),服务器做处理和响应,得到你的邮箱地址填写重复了,把响应结果发给页面,在这个过程中你仍然可以填写其他内容,这时候服务器会提示你有重复的邮箱地址,在页面上的表现只是邮箱地址旁别加了一行字或者把整个文本框标红,并没有重新刷你的页面,所有的填写错误会实时的显示出来,你也会实时的更正。这个过程中,你会有整个页面的刷新,也不会有整个页面的提交和等待,最后提交,一切都会搞定的

4.实现Ajax的异步交互步骤

创建XMLHttpRequest核心对象

     与服务器端建立连接
    使用XMLHttpRequest对象的open(method,url)方法
    method - 设置当前请求的类型
    url - 设置当前请求的地址
    向服务器端发送请求
    使用XMLHttpRequest对象的send(请求参数)方法
    请求参数的格式 - key=value
    接收服务器端的响应数据
            使用XMLHttpRequest对象的onreadystatechange事件,监听服务器端的通信状态
            使用XMLHttpRequest对象的readyState属性,判断服务器端的当前状态(0-4)
            使用XMLHttpRequest对象的status属性,判断服务器端的状态码(200)
            使用XMLHttpRequest对象的responseText属性,接收服务器端的响应数据

你可能感兴趣的:(面试 | Ajax--进阶(能认真的都答对了,你就真的会ajax了))