电商网站功能介绍,做淘客网站需要多大的空间,ip在线代理网页,jsp做的网站站 图标是tomcat的 怎么换[交互]AJAX 创建 XMLHttpRequest发送请求服务器响应XMLHttpRequest readyState 状态值响应数据请求状态变更回调函数XMLHttpRequest status 的值常用状态码设置 AJAX 是技术#xff0c;不是工具#xff0c;区别于 axios、fetch、$.ajax 等(封装工具)现有交互工具,是用于改变部… [交互]AJAX 创建 XMLHttpRequest发送请求服务器响应XMLHttpRequest readyState 状态值响应数据请求状态变更回调函数XMLHttpRequest status 的值常用状态码设置 AJAX 是技术不是工具区别于 axios、fetch、$.ajax 等(封装工具)现有交互工具,是用于改变部分网页的技术
HTTP 超文本传输协议所以 AJAX 也不是 HTTP , AJAX 是实现 HTTP 的一种技术
数据交互的根本是现代浏览器都支持 XMLHttpRequest 对象
AJAXAsynchronous JavaScript and XML
创建 XMLHttpRequest
let xmlhttp null;
if (window.XMLHttpRequest) {// IE7, Firefox, Chrome等现代浏览器执行代码xmlhttp new XMLHttpRequest();
} else {// IE6, IE5 浏览器执行代码xmlhttp new ActiveXObject(Microsoft.XMLHTTP);
}发送请求
xmlhttp.open(method, url, async);
xmlhttp.setRequestHeader(header, headerValue); //设置请求头
xmlhttp.send(postStr); //发送请求到服务器method: 方法类型url: 服务器请求文件地址async: 同步 false 或异步 truepostStr: post 方法提交的数据
服务器响应
XMLHttpRequest readyState 状态值
xmlhttp.readyState 的值
取值说明0请求未初始化(未调用 open))1请求已经建立但是未发送( 未调用 send())2请求已发送正在处理中(通常现在可以从响应中获取内容头)3请求处理中响应中部分数据可用但服务器还未完成响应的生成4响应已完成可以获取并使用服务器的响应了
xmlhttp.readyState 的值每次发生改变都会调用 xmlhttp.onreadystatechange
响应数据
xmlhttp.responseTxt; //响应为字符串
xmlhttp.responseXML; //响应为XML对象请求状态变更回调函数
xmlhttp.onreadystatechange function () {if (xmlhttp.readyState 4 xmlhttp.status 200) {document.getElementById(myDiv).innerHTML xmlhttp.responseText;}
};XMLHttpRequest status 的值
xmlhttp.status 的值及解释
取值说明100客户继续发出请求101客户要求服务器根据请求转换 HTTP 协议版本200交易成功201提示知道新文件的 URL202接受和处理,但处理未完成203返回信息不确定或不完整204请求收到但返回信息为空205服务器完成了请求用户代理必须复位当前已经浏览过的文件206服务器已经完成了部分用户的 GET 请求300请求的资源可在多处得到301删除请求数据302在其他地址发现了请求数据303建议客户访问其他 URL 或访问方式304客户端已经执行 GET但文件未变化305请求的资源必须从服务器指定的地址得到306前一版本 HTTP 代码现行版本不再使用307申明请求的资源临时性删除400错误请求如语法错误401请求授权失败402保留有效 ChargeTo 头响应403请求不允许404没有发现文件、查询或 URl405用户在 Request-Line 字段定义的方法不允许406根据用户发送的 Accept 拖请求资源不可访问407类似 401用户必须首先在代理服务器上得到授权408客户端没有在用户指定的时间内完成请求409对当前资源状态请求不能完成410服务器上不再有此资源且无进一步的参考地址411服务器拒绝用户定义的 Content-Length 属性请求412一个或多个请求头字段在当前请求中错误413请求的资源大于服务器允许的大小414请求的资源 URL 长于服务器允许的长度415请求资源不支持请求项目格式416请求中包含 Range 请求头字段在当前请求资源范围内没有 range 指示值请求也不包含 If-Range 请求头字段417服务器不满足请求 Expect 头字段指定的期望值如果是代理服务器可能是下一级服务器不能满足请求500服务器产生内部错误501服务器不支持请求的函数502服务器暂时不可用有时是为了防止发生系统过载503服务器过载或暂停维修504关口过载服务器使用另一个关口或服务来响应用户等待时间设定值较长505服务器不支持或拒绝请求头中指定的 HTTP 版本总结对以上的状态的归总说明1xx信息响应类表示接收到请求并且继续处理2xx处理成功响应类表示动作被成功接收、理解和接受3xx重定向响应类为了完成指定的动作必须接受进一步处理4xx客户端错误客户请求包含语法错误或者是不能正确执行5xx服务端错误服务器不能正确执行一个正确的请求
xmlhttp.readyState4 xmlhttp.status200 的解释请求完成并且成功返回
常用状态码设置
const HTTP_STATUS_CODES {100: Continue,101: Switching Protocols,200: OK,201: Created,202: Accepted,203: Non-Authoritative Information,204: No Content,205: Reset Content,206: Partial Content,300: Multiple Choice,301: Moved Permanently,302: Found,303: See Other,304: Not Modified,305: Use Proxy,307: Temporary Redirect,400: Bad Request,401: Unauthorized,402: Payment Required,403: Forbidden,404: Not Found,405: Method Not Allowed,406: Not Acceptable,407: Proxy Authentication Required,408: Request Timeout,409: Conflict,410: Gone,411: Length Required,412: Precondition Failed,413: Request Entity Too Large,414: Request-URI Too Long,415: Unsupported Media Type,416: Requested Range Not Satisfiable,417: Expectation Failed,422: Unprocessable Entity,500: Internal Server Error,501: Not Implemented,502: Bad Gateway,503: Service Unavailable,504: Gateway Timeout,505: HTTP Version Not Supported
};