博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
ajax
阅读量:6632 次
发布时间:2019-06-25

本文共 1583 字,大约阅读时间需要 5 分钟。

什么是 AJAX ?

AJAX = 异步 JavaScript 和 XML。

AJAX 是一种用于创建快速动态网页的技术。

通过在后台与服务器进行少量数据交换,AJAX 可以使网页实现异步更新。这意味着可以在不重新加载整个网页的情况下,对网页的某部分进行更新。

传统的网页(不使用 AJAX)如果需要更新内容,必需重载整个网页面。

有很多使用 AJAX 的应用程序案例:新浪微博、Google 地图、开心网等等。

AJAX是基于现有的Internet标准

AJAX是基于现有的Internet标准,并且联合使用它们:

  • XMLHttpRequest 对象 (异步的与服务器交换数据)
  • JavaScript/DOM (信息显示/交互)
  • CSS (给数据定义样式)
  • XML (作为转换数据的格式)

lamp  AJAX应用程序与浏览器和平台无关的!

 

5.XHR对象:

AJAX - 创建 XMLHttpRequest 对象


XMLHttpRequest 是 AJAX 的基础。

 

6.

向服务器发送请求

如需将请求发送到服务器,我们使用 XMLHttpRequest 对象的 open() 和 send() 方法:

xmlhttp.open("GET","ajax_info.txt",true);
xmlhttp.send();

 

方法 描述
open(method,url,async)

规定请求的类型、URL 以及是否异步处理请求。

  • method:请求的类型;GET 或 POST
  • url:文件在服务器上的位置
  • async:true(异步)或 false(同步)
send(string)

将请求发送到服务器。

  • string:仅用于 POST 请求

 


GET 还是 POST?

与 POST 相比,GET 更简单也更快,并且在大部分情况下都能用。

然而,在以下情况中,请使用 POST 请求:

    • 无法使用缓存文件(更新服务器上的文件或数据库)
    • 向服务器发送大量数据(POST 没有数据量限制)
    • 发送包含未知字符的用户输入时,POST 比 GET 更稳定也更可靠
      • GET 请求

        一个简单的 GET 请求:

        实例

        xmlhttp.open("GET","/try/ajax/demo_get.php",true); xmlhttp.send();

        在上面的例子中,您可能得到的是缓存的结果。

        为了避免这种情况,请向 URL 添加一个唯一的 ID:

        实例

        xmlhttp.open("GET","/try/ajax/demo_get.php?t=" + Math.random(),true); xmlhttp.send();

        如果您希望通过 GET 方法发送信息,请向 URL 添加信息:

        实例

        xmlhttp.open("GET","/try/ajax/demo_get2.php?fname=Henry&lname=Ford",true); xmlhttp.send();
         
         
        10.

        POST 请求

        一个简单 POST 请求:

        实例

        xmlhttp.open("POST","/try/ajax/demo_post.php",true); xmlhttp.send();

        如果需要像 HTML 表单那样 POST 数据,请使用 setRequestHeader() 来添加 HTTP 头。然后在 send() 方法中规定您希望发送的数据:

        实例

        xmlhttp.open("POST","/try/ajax/demo_post2.php",true); xmlhttp.setRequestHeader("Content-type","application/x-www-form-urlencoded"); xmlhttp.send("fname=Henry&lname=Ford");

转载地址:http://rybvo.baihongyu.com/

你可能感兴趣的文章
先知创新大会 | 现场众测,守护者的“竞技场”
查看>>
诗词—《吾念谁悲》
查看>>
Android官方命令深入分析之AVD Manager
查看>>
野生程序员是指仅凭对计算机开发的兴趣进入这个行业,从前端到后台一手包揽,但各方面能力都不精通的人(转)...
查看>>
VirtualBox如何扩展虚拟机Ubuntu的硬盘容量?
查看>>
vscode关闭后未打开上次界面的解决办法
查看>>
【Windows10 IoT开发系列】PowerShell的相关配置
查看>>
全面屏成行业标配,vivo副总透露将推完成度更高产品
查看>>
linux下监视进程 崩溃挂掉后自动重启的shell脚本
查看>>
nagios对windows流量的检测
查看>>
linq---我为你提笔序,你的美不只查询语句
查看>>
细说堡垒机与数据库审计
查看>>
oracle的MAX_DUMP_FILE_SIZE参数和ora-02065
查看>>
Docker入门教程(三)Dockerfile
查看>>
Android 6.0出现的init: cannot execve(‘XXX’):Permission denied问题:禁止SELINUX的权限设置...
查看>>
Tilera推用于云计算的多核处理器Meshed
查看>>
企业寻求数字化转型 物联网成策略性关键
查看>>
金融科技巨头BATJ高管讨论:中国“监管沙盒”应该怎么做?
查看>>
Alsa音频驱动开发参考
查看>>
CDN企业三分天下 共享模式独树一帜
查看>>