2

Gmail の imap 拡張コマンド X-GM-RAW を使用すると、ASCII クエリ文字列を使用して検索を実行できます。クエリで utf-8 文字が使用されている場合、imap は不適切な応答を返します。

https://developers.google.com/google-apps/gmail/imap_extensions#extension_of_the_search_command_x-gm-raw

X-GM-RAW 検索が正常に機能するように、utf-8 入力文字列をどのようにエンコードする必要がありますか。「件名」や「rfc833msgid」などの特定のフィールドを検索する柔軟性を失いたくない

ありがとう

4

2 に答える 2

0

IMAP は8 ビット クリーンではないため、さまざまなエンコーディングを使用して 8 ビット データを表す必要があります。

フォルダーやラベルなどの場合、 IMAP4 はModified UTF-7を使用してこれらの文字を表します。好都合なことに、変更された utf7 でエンコードされた ASCII データはそれ自体としてエンコードされるため、通常は特別なことを行う必要はありません。

メッセージヘッダー(件名を含む) の場合、テキストはMime wordsとしてエンコードされます。

最後に、添付ファイルは通常、Base64またはQuoted-Printableとしてエンコードされます。

私の最善の推測は、GMail が X-GM-RAW クエリに変更された utf7 を使用していることです。私が見つけた変更された utf7 の最適なリファレンス実装は、IMAPClient Python ライブラリにあります。

お役に立てれば!

于 2012-07-21T07:47:18.370 に答える