jquery 如何将JSON对象流读入浏览器

3b6akqbq  于 2023-03-29  发布在  jQuery
关注(0)|答案(1)|浏览(92)

给定一个node.js样式的对象流,如下面的示例所示,如何通过网页上的http请求读取并处理它:

{"id":"one",   "value":"the first object"}
{"id":"two",   "value":"the second object"}
{"id":"three", "value":"the third object"}
zzwlnbp8

zzwlnbp81#

渐进式解析http请求是oboe.js擅长的事情。你想要发送的东西看起来像是JSON Lines。从技术上讲,oboe只支持接收单个有效的JSON对象或数组。但我发现你可以让它为你的数据工作:)

oboe('/data.json')
  .node('{id value}', function(x) {
    console.log('object', x)
  })
  .node('!', function(x) {
    console.log('root', x)
  })

您可以使用oboe来请求加载数据(它在后台使用本机XMLHttpRequest)。然后您使用node为同时具有id属性和values属性的任何对象添加侦听器,或者为任何具有!的根级别对象添加侦听器。请注意,您 * 不 * 必须使用两者。
您可以在这里查看一个工作示例here和源代码。

  • Gotcha*:如果你尝试使用双簧管的done函数,有一件事值得注意,那就是它会多次触发,每个对象一次。这是因为每个对象都会被解析为一个完全有效的对象。

相关问题