博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
AJAX之三种数据传输格式详解
阅读量:2177 次
发布时间:2019-05-01

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

一、HTML

  • HTML由一些普通文本组成。如果服务器通过XMLHTTPRequest发送HTML,文本将存储在responseText属性中。
  • 从服务器端发送的HTML的代码在浏览器端不需要用JavaScript进行解析。
  • 可以直接使用innerHTML属性把服务器传输过来的HTML文本插入到页面中。

①、html文本

andy.html
jeremy.html
richard.html

②、解析HTML文本

<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%>                  

People

二、XML

  • XML是一种通用的数据格式
  • 不必把数据强加到已定义好的格式中,而是要为数据自定义合适的标记
  • 利用DOM可以完全掌控文档

①、xml文档

andy.xml
andy keith
http://andys.com/
jandy@qq.com
jeremy.xml
jeremy keith
http://adsds.com/
jeryem@qq.com
richar.xml
richard keith
http://richard.com/
richard@qq.com

③、解析XML

<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%>                  

People

三、JSON

  • JSON(JavaScript Object Notation)一种简单的数据格式,比xml更轻巧。JSON是JavaScript原生格式。
  • JSON的规则很简单:对象是一个无序的键值对的集合。一个对象以“{” 左括号开始,以“}”右括号结束。每个“名称”后跟一个“:”(冒号);键值对之间用“,”(逗号分隔 )
  • JSON只是一种文本字符串。它被存储在responseText属性中
  • 函数eval会把一个字符串当作它的参数。然后这个字符串会被当作JavaScript代码来执行。因为JSON的字符串就是由JavaScript代码构成的所以它本身是可执行的
  • JSON提供了json.js 包,下载后,使用JSON.parse()方法将字符串解析为JOSN对象

①、json文档

andy.js
{
"person":{ "name":"andy budd", "website":"http://andy.com", "email":"andy@qq.com"}}

jeremy.js

{"person":{    "name":"jeremy budd",    "website":"http://jeremy.com",    "email":"jeremy@qq.com"}}

richard.js

{"person":{    "name":"richard budd",    "website":"http://richard.com",    "email":"richard@qq.com"}}

②、解析JSON

<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%>                  

People

三、三者对比

  • 若应用程序不需要与其他应用程序共享数据的时候,使用HTML片段来返回数据时最简单
  • 如果数据需要重用,JOSN文件是个不错的选择,其在性能和文件大小方面有优势。
  • 当远程应用程序未知时,XML文档是首选
 
 
 

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

你可能感兴趣的文章
Leetcode C++《热题 Hot 100-21》581.最短无序连续子数组
查看>>
Leetcode C++《热题 Hot 100-22》2.两数相加
查看>>
Leetcode C++《热题 Hot 100-23》3.无重复字符的最长子串
查看>>
Leetcode C++《热题 Hot 100-24》5.最长回文子串
查看>>
Leetcode C++《热题 Hot 100-26》15.三数之和
查看>>
Leetcode C++《热题 Hot 100-28》19.删除链表的倒数第N个节点
查看>>
Leetcode C++《热题 Hot 100-29》22.括号生成
查看>>
Leetcode C++《热题 Hot 100-44》102.二叉树的层次遍历
查看>>
Leetcode C++《热题 Hot 100-47》236.二叉树的最近公共祖先
查看>>
Leetcode C++《热题 Hot 100-48》406.根据身高重建队列
查看>>
《kubernetes权威指南·第四版》第二章:kubernetes安装配置指南
查看>>
Leetcode C++《热题 Hot 100-49》399.除法求值
查看>>
Leetcode C++《热题 Hot 100-51》152. 乘积最大子序列
查看>>
Leetcode C++ 《第181场周赛-1》 5364. 按既定顺序创建目标数组
查看>>
Leetcode C++ 《第181场周赛-2》 1390. 四因数
查看>>
阿里云《云原生》公开课笔记 第一章 云原生启蒙
查看>>
阿里云《云原生》公开课笔记 第二章 容器基本概念
查看>>
阿里云《云原生》公开课笔记 第三章 kubernetes核心概念
查看>>
阿里云《云原生》公开课笔记 第四章 理解Pod和容器设计模式
查看>>
阿里云《云原生》公开课笔记 第五章 应用编排与管理
查看>>