2017-08-31 8 views
0

パスワードに@が含まれている場合、ImapMailReceiverはホストを正しく返すことができませんでした。例えばImapMailReceiverの不適切な動作

ユーザ名:[email protected]

パスワード:imap.gmail.com

最終的なURI文字列:123

ホスト@ ABC

IMAP://[email protected]:imap.gmail.com @ 123 @ ABC:993/INBOX

そして、ImapMailReceiverは私がチェック[email protected]

としてホストを識別thisスレッドですが、私はImapMailReceiverを作成するためにJavaConfigの方法を使用しています。

この問題を回避する方法はありますか?

ありがとうございます!

UPDATE

符号を有する最終URIストリング

IMAP://abc%40gmail.com:abc%[email protected]:993/INBOX

この場合、AuthenticationExceptionが発生しました。

上記の情報が原因で問題を理解するのに役立ちます。

UPDATE上記1

はGmailから問題でした。 1つは、認証関連の問題を解決するためにGmailでLESS SECURE APPセキュリティオプションを有効にする必要があります。

答えて

0

RFC 1738は言う:

Within the user and password field, any ":", "@", or "/" must be encoded. 

私はあなたがすでにどのようにURLエンコードの作品を​​知って期待しています。リフレッシャーが必要な場合は、同じ文書の18ページを参照してください。

+0

ご返信ありがとうございます。 URLエンコードを知っています。私もパスワードをエンコードしようとしたが、私はAuthenticationExceptionを得た。 –

+0

質問を符号化文字列で更新しました。 –

+1

Gmailではデフォルトでjavamailクライアントが許可されていません。アカウントの設定に入り、セキュリティ要件を減らす必要があります。どのように私に尋ねないでください、私は再び自分自身をGoogleにしなければならないでしょう。 –