原生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. wordpress jwt-auth 多语言 jwt_auth_bad_iss的解决方法

    因为目前处理的 wordpress 网站使用了,使用 qtranslate-x 多语言插件 JWT Authentication for WP REST API 插件 rest api 登录 调用wp ...

  2. [转]C# 之泛型详解

    什么是泛型 我们在编写程序时,经常遇到两个模块的功能非常相似,只是一个是处理int数据,另一个是处理string数据,或者其他自定义的数据类型,但我们没有办法,只能分别写多个方法处理每个数据类型,因为 ...

  3. AutoIt自动化编程(4)【转】

    五.自动化操作轻松入门系列5 控件操作 然而,在真正实现自动化时仅靠上面的技术往往难以达到预期目的.下面开始进入最为重要的控件操作. 1.设置文本 在安装软件的过程中用户往往需要提供一些必需信息,比如 ...

  4. HTML - 内嵌标签相关

    <html> <head></head> <body> <!-- iframe (内嵌标签) src : 要显示的网页资源路径(本地资源或网络资源 ...

  5. BZOJ1912:[APIO2010]patrol巡逻

    Description Input 第一行包含两个整数 n, K(1 ≤ K ≤ 2).接下来 n – 1行,每行两个整数 a, b, 表示村庄a与b之间有一条道路(1 ≤ a, b ≤ n). Ou ...

  6. PAT甲级——A1001A+BFormat

    Calculate a+b and output the sum in standard format -- that is, the digits must be separated into gr ...

  7. Eclipse反编译插件jd-eclipse安装指南

    Java Decompiler是一款比较好用的反编译工具,包括: JD-GUI:独立java编译工具 JD_Eclipse:用于Eclipse的反编译插件 下面主要介绍jd-eclipse的获取和安装 ...

  8. 01_Spring入门程序

    一.什么是Spring? 1.Spring是分层的JavaSE/EE full-stack(一站式) 轻量级开源框架 2.spring是一个高度灵活的轻量级框架,其目的是降低企业级应用开发的复杂度. ...

  9. 05-python 学习第五天,简易聊天工具(shelve模块练习)

    需求:1.有两个用户,一个是mychat.py,另一个是youchat.py2.通过执自己的文件,可以看到对方输入的内容,实现连个命令行窗口之间聊天的功能.3.通过shelve 持久化写入和和读取功能 ...

  10. JavaWEB过滤器和监听器技术

    过滤器介绍 什么是过滤器 生活中的例子: 滤水器,口罩,杯子上滤网,渔网 生活中的过滤器:留下我们想要的,排除,我们不想要的. 高考: 只有分数够高的同学才能进入理想的大学.有一部分同学被拦截在大学之 ...