【问题标题】:What is wrong with this IMAP ESEARCH command syntax?这个 IMAP ESEARCH 命令语法有什么问题?
【发布时间】:2012-10-02 01:16:32
【问题描述】:

我正在寻找一种方法来搜索我的邮件服务器上的所有 IMAP 文件夹。我最近发现了IMAP ESEARCH command,它扩展了通常的 SEARCH 命令来搜索文件夹。但是,我似乎无法让它发挥作用。

我检查了邮件服务器是否支持ESEARCH。远程登录后,我执行了以下操作:

* OK JAMES IMAP4rev1 Server Server server-address is ready.
A1 LOGIN test test
A1 OK LOGIN completed.
A2 CAPABILITY
* CAPABILITY SASL-IR IDLE LITERAL+ AUTH=PLAIN CONDSTORE ESEARCH CHILDREN UIDPLUS UNSELECT WITHIN ENABLE I18NLEVEL=1 SEARCHRES IMAP4rev1 NAMESPACE QRESYNC
A2 OK CAPABILITY completed.
A3 LIST "" "*"
* LIST (\HasNoChildren) "." "INBOX"
* LIST (\HasNoChildren) "." "Drafts"
* LIST (\HasNoChildren) "." "Sent"
* LIST (\HasNoChildren) "." "Trash"
A3 OK LIST completed.

注意ESEARCH 的存在。然后我尝试了以下ESEARCH,但失败了。

A4 ESEARCH IN (mailboxes "INBOX") unseen
A4 BAD failed. Unknown command.

普通的搜索工作正常:

A5 SELECT INBOX
* FLAGS (\Answered \Deleted \Draft \Flagged \Seen)
...
A5 OK [READ-WRITE] SELECT completed.
A6 SEARCH UNSEEN
* SEARCH 3
A6 OK SEARCH completed.

从我可以阅读的规范和formal syntax 来看,这应该可以工作。任何帮助或指示将不胜感激。

【问题讨论】:

  • 该文档表明“ESEARCH”由“MULTISEARCH”功能描述。能力 ESEARCH 会是别的东西吗?
  • 啊,你是对的!我将不得不联系 Apache James 开发人员,看看应该包含的 ESEARCH support 发生了什么。我想知道这是否意味着它具有 ESEARCH 响应功能 - 我知道其他一些搜索命令可以返回 ESEARCH 响应。
  • @Max 如果您将该评论转换为答案,我会接受它:)

标签: search imap


【解决方案1】:

ESEARCH 能力表明服务器支持RFC 4731RFC4466,它们定义了ESEARCH 响应和SEARCH 命令的扩展格式。

MULTISEARCH 功能 (RFC 6237) 建立在ESEARCH 功能的基础上,可以在当前选定邮箱之外的另一个邮箱中进行搜索。您使用的命令语法需要MULTISEARCH

【讨论】:

    【解决方案2】:

    该文档表明ESEARCH 由功能MULTISEARCH 描述。

    能力ESEARCH 可能是别的东西?

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2018-01-25
      • 2021-05-25
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-07-18
      • 1970-01-01
      相关资源
      最近更新 更多