Мое приложение iOS использует Mailcore для доступа к учетной записи электронной почты пользователя. Отправка и получение осуществляются через SMTP и IMAP, и оба процесса работают должным образом для Gmail и Outlook (оба используют OAuth для входа в систему).
Я только что добавил Yahoo (а также некоторых других провайдеров в приложение, которые не используют OAuth), и для всех этих провайдеров у меня возникла проблема именно с отправкой сообщений.
Проблема заключается в том, что, несмотря на то, что сообщения успешно отправляются из моего приложения, они не отображаются в папке отправленных в Интернете для провайдера.
Например, если я войду в свою учетную запись Yahoo в своем приложении и отправлю сообщение в свою учетную запись Gmail, сообщение появится в моем почтовом ящике Gmail в Интернете, но не в моем ящике отправленных Yahoo в Интернете.
Я попытался добавить Yahoo в обычное почтовое приложение на iPhone и отправить сообщение из этой учетной записи — это сработало нормально — сообщение отображается в поле «Отправлено Yahoo» в Интернете. Итак, затем я сравнил заголовки двух сообщений (одно, отправленное из почтового приложения, и одно, отправленное из моего приложения), и единственная очевидная разница, которую я вижу, находится в строке «X-Rocket-Received»:
Почтовое приложение:
X-Rocket-Received: from [11.180.250.219] ([email protected] with xymcookie [216.39.61.254])
by smtp203.mail.ne1.yahoo.com with SMTP; 23 May 2014 08:19:54 -0700 PDT
Мое приложение:
X-Rocket-Received: from ([email protected] with plain [98.138.105.21])
by smtp214.mail.ne1.yahoo.com with SMTP; 23 May 2014 08:58:29 -0700 PDT
Кто-нибудь может мне ответить на следующие вопросы:
1) Что означает X-Rocket-Received?
2) Каково значение «с xymcookie» по сравнению с «простым»?
3) Моя проблема может быть связана с тем, что у меня нет xymcookie?
4) С чего я могу начать решать эту проблему?
Большое спасибо.