Skip to content

Latest commit

 

History

History
62 lines (39 loc) · 4.25 KB

2017-12-27 第三方存储查询.md

File metadata and controls

62 lines (39 loc) · 4.25 KB
title tags grammar_cjkRuby
2017-12-27 第三方存储查询
查询,小书匠
true

概述

从 5.3.0 版本开始,小书匠提供第三方存储快速查询功能。查询支持 已加载查询层级目录查询

由于第三方存储,数据都是异步从第三方服务商取得,不同的第三方服务商有各种不同的限制,比如数据最大抓取数,在规定时间内 api 请求数等限制,同时为了考虑小书匠客户端本身的性能,使用体验。小书匠不提供遍历第三方服务目录来进行文章标题的查询。而仅提供了 已加载查询层级目录查询

已加载查询

已加载查询,指的是在你当前展开过的所有节点内查询。

如何使用已加载查询

  1. 在文档目录管理区的下方,点击过滤图标 ,进行过滤查询模式

过滤查询入口

  1. 在出现的查询输入框,输入想要查询的文字,回车(或者点击旁边的放大镜按钮)

过滤查询结果

  1. 小书匠就会在您已经加载的列表基础上进行过滤查询。示例图片内,由于只加载了根目录的列表, 2017asdfgood 都还没有加载过,所以点击查询时,得到的结果只有一条。如果我们在执行查询前,点击了 2017 等目录,再次执行查询,就会把 2017 目录下的文件列表也加入过滤查询范围。
  2. 点击输入框左边的取消图标,可以退出过滤查询模式

层级目录查询

层级目录查询提供了比已加载查询更加强大的过滤查询模式,用户可以通过它进行更加精细的查询,并且支持异步抓取第三方服务目录的查询。

如何使用层级目录查询

  1. 在文档目录管理区的下方,点击过滤图标 ,进行过滤查询模式

过滤查询入口

  1. 在出现的查询输入框,输入想要查询的文字,注意文字内必须包含 / 符号,用于目录层级深度的控制,回车(或者点击旁边的放大镜按钮),系统将自动触发层级目录查询

层级目录查询结果

  1. 层级目录查询系统会自动异步加载相关的目录,所以在进行层级目录查询时,最好提供比较准确的查询字符。如果你的某个目录下有很多的子目录,在使用层级目录查询时,提供的过滤字符匹配的子目录又比较多,就会造成很多的请求,如果超出第三方服务商在同一时间的请求限制,将会影响你后继的操作。
  2. 层级目录查询的过滤规则,可以在后面单独的小节里查看。
  3. 点击输入框左边的取消图标,可以退出过滤查询模式。

层级目录查询过滤规则

  1. 只要查询字符里包含 / 符号,查询时,系统就直接使用层级目录查询的算法。
  2. 查询字符之间的 / 符号,代表一个层级,也就是目录深度。
  3. 连续相同的 / 符号,系统只当成一个 / 符号来处理,也就是当成一个层级,并且自动过滤掉所有空白字符。 比如 g o //xs/ //w, 系统会自动转换成 go/xs/w 来过滤查询。
  4. 层级目录查询从左到右的匹配查询过程,只有左边匹配成功了,才会再往下一层查询。比如 go/xs/w,系统从根目录开始,在根目录的子目录下查找跟 go 匹配的标题。这里匹配的结果是 good,然后才会在 good 基础上进行下一层 xs 的匹配。即使 2017 目录下也有 xs 相关的结果,但由于第一层已经未成功,所以 2017 目录下的列表是不会包含到过滤查询结果来的。
  5. 系统在层级目录查询时,如果匹配到的层级还没有加载,系统会向第三方服务商发送列表请求,得到新列表结果后,再继续过滤查询。
  6. 每一层的匹配使用的是类似数据库的 like 查询,也就是包含查询。 比如 go/xs/w, 系统就会在第一层里找标题包含 go 字符的目录,然后在符合要求的基础上找第二层包含 xs 字符的目录,以此类推下去。
  7. 系统只对标题进行匹配,不对正文内容,标签等进行匹配。