ajax  get&post

1.使用get发送请求,会有请求缓存

  1)什么叫请求缓存,请求信息相同浏览器不会再向服务器发送请求,导致访问服务器失败。

  2)解决:将随机数添加到请求路径后面参数传递过去,Math.Random(),可以避免缓存的问题。

2.使用post发送请求,安全性高,解决乱码容易,速度次于get,传递方式post,传递参数在最后发送请求的时候传递

 因为get是在地址栏里传递参数,安全性低,传递方式不同。

  var v_data="name="+obj.value;  

//传递多个参数 v_data="name="+obj.value+"&possword="+xxxxx
  xmlHttpRequest.send(v_data);

//创建异步引擎对象,支持IE7以上,IE6以下new ActiveXObject('Microsoft.XMLHTTP');

  function createXMlHttpRequest(){
    if(window.XMLHttpRequest){
    return new XMLHttpRequest();
    }
  }

//回调

function callBack(){
  if(xmlHttpRequest.readyState==4&&xmlHttpRequest.status==200){

  //responseText响应页面的内容
  var date=xmlHttpRequest.responseText;
  if(date==1){
      document.getElementById("message").innerHTML='<font color="red">此账号不能用!</font>';
    }else{
      document.getElementById("message").innerHTML='<font color="green">账号可以用</font>';
    }
  }
}

  readyState的状态属性值

  0-未初始化,尚未调用open()方法;
  1-启动,调用了open()方法,未调用send()方法;
  2-发送,已经调用了send()方法,未接收到响应;
  3-接收,已经接收到部分响应数据;
  4-完成,已经接收到全部响应数据;

  Status http的状态属性值

  200-请求正常响应

  404没有资源

  500内部错误

function checkName(obj){

//赋值引擎对象
  xmlHttpRequest=createXMlHttpRequest();

//onreadystatechange用于指向回调方法的引用,clallBack()加了括号的是方法的调用
  xmlHttpRequest.onreadystatechange=callBack;

//参数1:请求方式get&post,参数2:请求路径及传递的参数,请求参数,参数3:true异步提交,false:同步提交,默认值为true,false会阻塞线程
  xmlHttpRequest.open("GET","CheckName.do?name="+obj.value,true);

//头文设置
  xmlHttpRequest.setRequestHeader("Content-Type","application/x-www-form-urlencoded");

//使用异步引擎发送请求
  xmlHttpRequest.send();
}

原生Ajax发送请求的更多相关文章

  1. Ajax - 发送请求原理

    1,什么是ajax? Asynchronous JavaScript and XML(当然现在xml已经由json代替): 主要是用于前后台的交互(表单提交已经被废弃): 使用场景:前台获取数据.表单 ...

  2. 原生ajax的请求过程

    原生ajax的请求过程 创建全平台兼容的XMLHttpRequest对象: function getXHR(){ var xhr = null; if(window.XMLHttpRequest) { ...

  3. ajax发送请求跨域 - uri java代理

    问题:ajax发送请求出现cors跨域 解决办法:可以通过java代理的方式,后台发送请求 1.get请求 public void proxyGet(String url) { try { URL r ...

  4. Ajax发送请求等待时弹出模态框等待提示

    主要的代码分为两块,一个是CSS定义模态框,另一个是在Ajax中弹出模态框. 查看菜鸟教程中的模态框教程demo,http://www.runoob.com/try/try.php?filename= ...

  5. ajax对象。同步与异步及ajax发送请求

    ajax对象的属性.方法 属性 readyState: Ajax状态码 * 0:表示对象已建立,但未初始化,只是 new 成功获取了对象,但是未调用open方法 1:表示对象已初始化,但未发送,调用了 ...

  6. Django——Ajax发送请求验证用户名是否被注册

    场景: 用户注册的时候,输入用户名之后,Ajax发送请求到后端,后端验证该用户名是否已经被注册,然后返回到注册页面提示用户. 1.模型: from django.db import models cl ...

  7. 原生Ajax发送get、post请求每一步

    说明 发送Ajax的请求的核心对象是XMLHttpRequest,因此我们需要了解该对象的相关属性和方法 方法(图一) 属性(图二) 第一步:创建 XMLHttpRequest对象,下面都简写为 xh ...

  8. 原生ajax的请求函数

    ajax:一种请求数据的方式,不需要刷新整个页面:ajax的技术核心是 XMLHttpRequest 对象:ajax 请求过程:创建 XMLHttpRequest 对象.连接服务器.发送请求.接收响应 ...

  9. ajax发送请求下载字节流形式的excel文件

    背景 开发项目中导出功能,因为数据量有点大,所以导出可能需要时间有点长,所以想用ajax异步请求. 存在问题 利用传统的js和jquery提供的ajax相关获取响应的方式是无法实现excel文件下载的 ...

随机推荐

  1. 关于Yahoo十四条军规与前端性能优化

    关于Yahoo十四条军规与前端性能优化 热度 4已有 223 次阅读2014-8-3 15:01 |个人分类:前端相关|系统分类:前端优化| 前端优化, yahoo, 性能优化 启用Gzip压缩.Gz ...

  2. 【Ionic】---$ionicLoading ion-spinner SVG旋转加载的动画图标

    ionic 加载动作 $ionicLoading $ionicLoading 是 ionic 默认的一个加载交互效果.里面的内容也是可以在模板里面修改. 用法 angular.module('Load ...

  3. 表单(form)成为 ajax 提交的表单(form)

    1.form <form id="ff" method="post"> <div> <label for="name&q ...

  4. [Java][Liferay] 如何从Javascript的function中获取language property的值

    问题描述 在Portlet中,Javascript中通过Liferay.Language.get("key")的方式是拿不到自己添加的property的值,原因是Liferay.L ...

  5. 洛谷 P1195 口袋的天空(最小生成树)

    嗯... 题目链接:https://www.luogu.org/problemnew/show/P1195 思路: 首先可以判断这道题是用最小生成树来做的,然后在将其合并时用ans记录一下它的总消耗, ...

  6. ArcGIS 10.2之地图服务的发布、使用

    2.发布地图服务 2.1 地图服务器的建立 打开ArcCatalog,在左侧的GIS Servers下,双击Add ArcGIS Server, 弹出添加界面,选择,Administer GIS服务项 ...

  7. Web前端开发规范(二)

    3.HTML代码规范 .html文件必须存放在项目工程约定的目录中. .html文件的命名:以模块 + 功能的结合方式来命名,比如:newsList.html. 文档类型声明:HTML4中使用< ...

  8. Strut2_声明式异常处理

    Service 往外抛异常 public List<Category> list() throws SQLException{ Connection conn = DB.createCon ...

  9. azkaban调度

    azkaban调度 1.概述 azkaban是一套调度系统,常用大数据作业调度.azkaban包括web和executor两套程序,web主要完成展示和交互,executor上完成调度和作业提交执行. ...

  10. HCNA配置console线路密码aaa认证

    Please check whether system data has been changed, and save data in time Configuration console time ...