javascript - 分页时如何处理大型选择集
问题描述
我正在开发一个文档管理平台。用户可以将文档上传到网络应用程序,编辑他们的元数据,并执行任务(例如通过电子邮件将文档发送给他们的收件人)。
我们的用户需要能够从搜索结果中选择任意数量的文档。他们可以一个一个地选择文档,或者单击“全选”按钮。我们可以谈论要选择的数千或数万个文档。
搜索文档时,我们在 Datatables 表中显示分页结果。这意味着在为任务选择文档时,我们需要在某处存储选择集,因为 Datatable 只知道当前正在显示的行。目前,我们将文档的 GUIDS 存储在隐藏的页面元素中。
这被证明是不够的,因为我们面临着这种方法的问题: - 选择所有文档时,可能存在并发问题。如果在用户进行搜索和计划任务之间上传了更多符合当前搜索条件的文档怎么办?这可能会导致文档的意外处理。- 如果您在客户端选择“全选”时将所有 GUID 发送到客户端(以避免上述并发问题),则列表可能太大而无法作为 JSON 对象发送。- 也可能发生相反的情况:如果客户端的列表太大而无法发送到服务器怎么办?
我的问题是:存储和处理大型用户选择集的更好方法是什么?
解决方案
我发现您可以使用 GZip 或 Deflate在 ASP.Net 中压缩响应数据。多亏了这个,我能够发送大型数据集,没问题。
推荐阅读
- java - 我被作业困住了我无法在sqlite数据库android中保存图像路径
- cmake - CMake 在 add_subdirectory 之后强制安装
- swift - 在 ReSwift/Redux 中处理异步请求的好方法是什么
- typescript - 在我的谷歌云函数代码中创建的图像 url 在我的网站上放入标签时返回 401?
- python - 如何使用Python递归复制目录中具有特定扩展名的所有文件?
- excel - 将字符串的一部分从一组字符删除到另一个字符
- css - 无论如何都无法使用 CSS 居中标题图像
- python - Matching words with information from a web scraper
- flutter - Flutter Animated List: Conditionally add ListView item
- eclipse - Eclipse 2019-03 failing to run certain JUnit 4 tests from the Window but not Test suites or run configuration