Email Migration API v2. Multipart вставка возвращает 503
Я тестирую Email Migration API V2 с API клиента Google для ruby версии 0.7.1 Для многоэтапной загрузки я всегда получаю этот ответ от сервера:
{
"error": {
"errors": [
{
"domain": "global",
"reason": "backendError",
"message": "Backend Error"
}
],
"code": 503,
"message": "Backend Error"
}
}
Вот мой код:
client = Google::APIClient.new(
:application_name => 'My app',
:application_version => '1.1.0'
)
#auth code skipped
migration = client.discovered_api('admin', 'email_migration_v2')
file = {"isInbox" => true}
mail = StringIO.new "Date: Wed, 03 Jan 2013 02:56:03 -0800
From: admin@example.org
To: liz@example.com
Subject: Hello World!
MIME-Version: 1.0
Content-Type: text/html; charset=windows-1252
Content-transfer-encoding: 8bit
And I think to myself... What a wonderful world!"
media = Google::APIClient::UploadIO.new(mail, 'message/rfc822')
client.execute!(:api_method=> migration.mail.insert,
:media => media,
:body_object => file,
parameters: {
'userKey' => "name@domain.com",
'uploadType' => 'multipart',
})
Информация о некоторых журналах
ОТЛАДКА 18:58:13 rails [pid=6311]: Google::APIClient:: Запрос отправки API-запроса пост https://www.googleapis.com/upload/email/v2/users/name@domain.com/mail?uploadType=multipart {"User-Agent" => "Мое приложение /1.1.0 google-api-ruby-client/0.7.1 Mac OS X/10.9.4\n (gzip)", "Content-Type"=>"multipart/related;border =-----------RubyApiMultipartPost", "Content-Length"=>"682", "Accept-Encoding"=>"gzip", "Authorization"=>"Bearer xxxxx", "Cache-Control"=>"no-store"}
ПОЧТА ТЕЛА:
DEBUG 18:58:13 rails [pid=6311]: -------------RubyApiMultipartPost
Content-Disposition: form-data; name=""; filename="file.json"
Content-Length: 16
Content-Type: application/json
Content-Transfer-Encoding: binary
{"isInbox":true}
-------------RubyApiMultipartPost
Content-Disposition: form-data; name=""; filename="local.path"
Content-Length: 249
Content-Type: message/rfc822
Content-Transfer-Encoding: binary
Date: Wed, 03 Jan 2013 02:56:03 -0800
From: admin@example.org
To: liz@example.com
Subject: Hello World!
MIME-Version: 1.0
Content-Type: text/html; charset=windows-1252
Content-transfer-encoding: 8bit
And I think to myself... What a wonderful world!
-------------RubyApiMultipartPost--
Пожалуйста, помогите мне понять, почему Google отвечает 503. И как я могу решить эту проблему. Я уверен, что я не достиг API квоты.
Обновление 1:
Похоже, что заголовок Content-Disposition является причиной ошибки 503, потому что без нее загрузка работает нормально!