Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/452.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
使用Jquery/JavaScript在客户端浏览器中接收大容量数据_Javascript_Jquery_Wordpress_Bulk - Fatal编程技术网

使用Jquery/JavaScript在客户端浏览器中接收大容量数据

使用Jquery/JavaScript在客户端浏览器中接收大容量数据,javascript,jquery,wordpress,bulk,Javascript,Jquery,Wordpress,Bulk,我正在制作一个基于WordPress的应用程序,学生可以在他的网络浏览器上参加考试。这些问题将从储存在WordPress CMS中的问题库中随机选择和提供 在这方面,以下内容值得分享: -每次考试最多可有100道选择题 -每个问题都可以有图像,每个选项都可以有关联的图像 -由于考试是有时间限制的,所以我不能在学生每次完成问题时向服务器发送请求 我的问题是: 如何从服务器发送问题: -我应该一次性发送整个问题集,然后让Java脚本在客户端解析所有问题和选项吗 或 -例如,客户机应该在后台重复请求服

我正在制作一个基于WordPress的应用程序,学生可以在他的网络浏览器上参加考试。这些问题将从储存在WordPress CMS中的问题库中随机选择和提供

在这方面,以下内容值得分享:

-每次考试最多可有100道选择题

-每个问题都可以有图像,每个选项都可以有关联的图像

-由于考试是有时间限制的,所以我不能在学生每次完成问题时向服务器发送请求

我的问题是:

如何从服务器发送问题:

-我应该一次性发送整个问题集,然后让Java脚本在客户端解析所有问题和选项吗

-例如,客户机应该在后台重复请求服务器的问题,比如说每个问题有5个问题。如果这是更好的方法,我不确定如何实现这一点。有什么建议吗

还是有第三种方法我不知道

请提供有关该问题的任何意见和解决方案


提前感谢。

取决于用户的选择,将适当的JSON数据发送到客户端并动态呈现,但如果您想使用XML,那么让我们来讨论一下:

我应该提到,这种比较实际上是从在带有JavaScript的浏览器中使用它们的角度进行的。这不是任何一种数据格式都必须使用的方式,而且有很多好的解析器会改变细节,使我所说的不完全有效

JSON更紧凑,而且(在我看来)更可读——在传输中,它可以“更快”,因为传输的数据更少。

在解析中,它取决于您的解析器。将代码(JSON或XML)转换为数据结构(如映射)的解析器可能受益于XML的严格性质(XML模式很好地消除了数据结构的歧义)-但是在JSON中,可以从语法上推断项的类型(字符串/数字/嵌套的JSON对象),例如:

myJSON = {"age" : 12,
          "name" : "Danielle"}
解析器不需要足够的智能来意识到12代表一个数字(Danielle和其他任何字符串一样是一个字符串)。因此,在javascript中,我们可以做到:

anObject = JSON.parse(myJSON);
anObject.age === 12 // True
anObject.name == "Danielle" // True
anObject.age === "12" // False
在XML中,我们必须执行以下操作:

<person>
    <age>12</age>
    <name>Danielle</name>
</person>
实际上,一个好的解析器可能会为您键入年龄(另一方面,您可能不希望这样)。当我们访问这些数据时,我们不是像上面的JSON示例那样进行属性查找,而是对键名进行映射查找。这样形成XML可能更直观:

<person name="Danielle" age="12" />

根据用户的选择,将适当的JSON数据发送到客户端并动态呈现。或者,在wordpress上编写一个.xml文件并将其发送到客户端(学生),然后由jquery/javascript对其进行解析,这是更好的选择。问题是什么?这种方法的缺点是什么?您是否建议将100个问题以及它们各自的多个选项(图像)作为一个json响应从服务器发送到客户端?是的,您可以。只需使用字节数组(base 64)图像格式发送和接收图像。
<person name="Danielle" age="12" />
myObject = parseThatXMLPlease();
age = myObject.getChildren("person")[0].getAttr("age");