原生ajax配置详解

 // 原生ajax
// 1. 创建ajax对象
if(window.XMLHttpRequest){
// // IE7+, Firefox, Chrome, Opera, Safari 浏览器执行代码
var xhr = new XMLHttpRequest()
}else{
// IE6, IE5 浏览器执行代码
var xhr = new ActiveXObject("Microsoft.XMLHTTP")
}
// 2.连接服务器 open(方法,地址,异步传输)
xhr.open('get','file:///d%3A/markown/index.html',true); // xhr.setRequestHeader("Content-type","application/x-www-form-urlencoded"); 配置请求头
// setRequestHeader(header,value) 向请求添加 HTTP 头。
// header: 规定头的名称
// value: 规定头的值 //3. 发送请求,如果使用的是post方法,则请求携带数据,在send中配置(仅post请求可用)
xhr.send() // 4.接收返回,客户端和服务器端有交互的时候会调用onreadystatechange
xhr.onreadystatechange=function(){
// xhr.readyState 浏览器和服务器进行到哪一步了。
// 0 --(未初始化) :还没有调用open方法
// 1 --(载入) :已调用send方法,正在发送请求
// 2 --(载入完成) :send方法完成,已收到全部响应内容,
// 3. --(正在解析) :正在解析响应内容。
// 4 --(完成) :响应内容解析完成,可以在客户端使用
if(xhr.readyState == 4){
if(xhr.status== 200){
// xhr.responseText 获得字符串形式的响应数据。
// xhr.responseXML 获得 XML 形式的响应数据。
console.log("请求成功,响应内容为" + xhr.responseText);
}else{
console.log("请求出错!!!");
}
}
}

对ajax简单封装

function ajax(methods,url,callBack,text) {
if(window.XMLHttpRequest){
// IE7+, Firefox, Chrome, Opera, Safari 浏览器执行代码
var xhr = new XMLHttpRequest()
}else{
// IE6, IE5 浏览器执行代码
var xhr = new ActiveXObject("Microsoft.XMLHTTP")
}
// 给methods 一个默认值
var methods = methods|| 'get' ;
xhr.open(methods,url,true);
// 如果是get请求,直接调用send方法发送请求
if (methods== 'get'){
xhr.send();
}
// 如果是post请求,则可配置请求参数
if (methods=='post'){
xhr.send(text);
}
xhr.onreadystatechange=function(){
if(xhr.readyState == 4){
if(xhr.status== 200){
// 请求成功之后调用回调函数
callBack(xhr.responseText);
}else{
let error = '错误码' + xhr.status
callBack(error);
}
}
}
}

调用

ajax('get','file:///d%3A/markown/index.html','',function(result){
console.log(result);
})

使用原生ajax及其简单封装的更多相关文章

  1. Ajax代码简单封装。

    function ajax(url, onsuccess, onfail) {    var xmlhttp = window.XMLHttpRequest ? new XMLHttpRequest( ...

  2. javascript中Ajax的简单封装

    GET方式的在线:DEMO POST方式在线:DEMO // 1.封裝AJAX函數 function nativeAjax(option,success,error){ // 定义domain,方便环 ...

  3. 原生ajax的请求封装get和post

    一个完整的AJAX请求包括五个步骤: 1.创建XMLHTTPRequest对象 2.使用open方法创建http请求,并设置请求地址 3.设置发送的数据,开始和服务器端交互 4.注册事件 5.获取响应 ...

  4. html --- ajax --- javascript --- 简单的封装

    Ajax的简单封装 Ajax的全称是AsynchronousJavaScriptAndXML 如有疑问请参考:http://zh.wikipedia.org/zh-cn/AJAX 以及传智播客的视频教 ...

  5. js原生Ajax的封装与使用

    一.原生Ajax代码的封装如下: (function() { var XHR = { createStandardXHR: function() { return new XMLHttpRequest ...

  6. 原生ajax、XMLHttpRequest和FetchAPI简单描述

    什么是ajax ajax的出现,刚好解决了传统方法的缺陷.AJAX 是一种用于创建快速动态网页的技术.通过在后台与服务器进行少量数据交换,AJAX 可以使网页实现异步更新.这意味着可以在不重新加载整个 ...

  7. js原生Ajax 的封装和原理

    原理及概念 AJAX即“Asynchronous Javascript And XML”(异步JavaScript和XML),是一种用于创建快速动态网页的技术. 动态网页:是指可以通过服务器语言结合数 ...

  8. 原生ajax封装,包含post、method方式

    原生ajax封装,包含post.method方式 function ajax(method, url, data, success) { var xhr = null; try { xhr = new ...

  9. 原生ajax与封装的ajax使用方法

    当我们不会写后端接口来测试ajax时,我们可以使用node环境创建一个本地服务器. 1.创建一个本地服务器可参考http://www.cnblogs.com/heyujun-/p/6793900.ht ...

随机推荐

  1. scull 的内存使用

    scull 使用的内存区, 也称为一个设备, 长度可变. 你写的越多, 它增长越多; 通过使用 一个短文件覆盖设备来进行修整. scull 驱动引入 2 个核心函数来管理 Linux 内核中的内存. ...

  2. 移植 thttpd Web 服务器

    下载 从 http://www.acme.com/software/thttpd/下载 thttpd 到/tmp 目录当中,并解压. 编译 thttpd [arm@localhost thttpd­2 ...

  3. 锋利的Jquery(Table,Checkbox)

    1.Table奇数偶数行 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http: ...

  4. mysql权限操作

    1.mysql权限操作 grant select,insert on test1.tb1 to ltx2@127.0.0.1 默认权限:什么都没有 2.用户管理特殊命令: 创建用户:create us ...

  5. 第九章 Odoo 12开发之外部 API - 集成第三方系统

    Odoo 服务器端带有外部 API,可供网页客户端和其它客户端应用使用.本文中我们将学习如何在我们的客户端程序中使用 Odoo 的外部 API.为避免引入大家所不熟悉的编程语言,此处我们将使用基于 P ...

  6. SSM项目实现连接两个mysql数据库

    最近做项目需要用到另一个数据库的内容,多方查找终于实现了功能. 我们都知道,在SSM框架中,我们在applicationContext.xml配置文件中添加数据源就可以实现数据库增删改查,但是只能连接 ...

  7. wifi共享大师,去除弹窗广告。

    1.安装WiFi共享大师 2.不要打开 3.右键打开文件所在位置 4.在任意目录新建三个空的txt,重命名为MiniNews.exe.ProLive.exe.WifiUpdate.exe 5.将上面的 ...

  8. 软件工程(C编码实践篇)学习总结

    吴磊 SA17225400 学习完了孟老师的软件工程(C编码实践篇),跟着老师一步步的完成了代码的编写,收获真的很大. 在学习这门课之前,我还不会用Linux,也没接触过Git.如今我已成能够在Lin ...

  9. day 42 03--CSS布局设置

      03--CSS布局设置   本节目录 一 盒模型 二 padding(内边距) 三 boder(边框) 四 简单认识一下margin(外边距) 五 标准文档流 六 块级元素和行内元素 七 浮动 八 ...

  10. Tree and Permutation (HDU 6446) 题解

    // 昨天打了一场网络赛,表现特别不好,当然题目难度确实影响了发挥,但还是说明自己太菜了,以后还要多多刷题. 2018 CCPC 网络赛 I - Tree and Permutation 简单说明一下 ...