gpt4 book ai didi

JQuery.AJAX - 我的服务器可以返回大量数据吗?

转载 作者:行者123 更新时间:2023-12-03 22:41:41 25 4
gpt4 key购买 nike

对于 JQuery.AJAX 函数的 dataType 选项,我不认为字节数组或 blob 是可能性之一。

如何获取它以便我的服务器可以返回一个字节数组作为 AJAX 调用的结果?

我可以将 blob 转换为文本,但我会追求紧凑性。

编辑:该 blob 将不会向用户显示。我的 javascript 将查看它并从中创建一个对象。它大约是一个 50kb 的 blob,速度很重要,所以如果不需要,我不想添加任何膨胀。

编辑:我的数据是一个整数数组。 Base64 编码是一种可能性,但我不想增加臃肿。如果没有办法做到这一点,我想我只会对其进行 Base64 编码。

最佳答案

编辑:根据评论讨论,我想修改我的答案。如果您传递一个整数数组,并且可以在服务器端将其转换为该格式,那么您绝对应该将其转换为 JSON 。 JSON 支持传递整数,jQuery 轻松支持获取 JSON。

整数数组的示例 JSON:

{
"array": [0, 1, 2, 3, 4, 5]
}

用于检索 JSON 的示例 Javascript/jQuery 代码:

$.getJSON('/url/to/binary/data/returning/json', 
function(data) {
// access the array this way:
var array = data.array;
var first = array[0];
// so here you can do whatever your code needs with that array
}
);

旧建议

虽然我同意上述评论者的观点,但我相信应该可以做到这一点。有一个base64编码器/解码器jQuery plugin这应该有助于传输您的数据。 (导致了一些 bloat ,这是真的)。如果您对数组进行 Base64 编码,您应该能够传输它。

如果您只想下载二进制数据(而不是显示它),请将响应的 MIME 类型设置为 application/octet-stream 并提供附件名称以供适当的浏览器处理。

$.get('/url/to/binary/data',
function(data) {
// convert binary data to whatever format you would like to use here with
// an encoded string, have the browser download, call
// a helper function, etc.
}
);

不过,您可能需要考虑查看更常通过 HTTP 传输的其他格式(或在必要时使用其他传输协议(protocol)),具体取决于您想要执行的操作。

关于JQuery.AJAX - 我的服务器可以返回大量数据吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2523355/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com