2016-07-03 14 views
0

pythonリクエストモジュールを使用して、インポートメッセージhttps://developers.google.com/gmail/api/v1/reference/users/messages/import#http-request用gmail REST APIを使用してGmailアカウントにメールをアップロードしようとしています。メールこれは、RAWデータのために働いている身体pythonリクエストでgmail REST API 'インポートメッセージ'

POST https://www.googleapis.com/gmail/v1/users/me/messages/import 
{ 
"raw": ".........." 
} 

で(.emlファイルのつまりデータがbase64.b64encodeでエンコード())RAWフォーマットであるが、いくつかのMB単位(たとえば5メガバイト)までの大きさが、私は '取得しています接続のタイムアウト 'が大きいデータ(〜10 MB以上)をアップロードしようとするとエラーが発生します。

このAPIを使用して、大きなメールデータをアップロードする方法を教えてもらえますか?私は

答えて

0

がより確実にデータファイルをアップロードするにはresumable

Resumable upload

uploadTypeを設定してみてください、これらのAPIを呼び出すためのOAuth access_tokenはを使用しています

、あなたは再開可能を使用することができますアップロードプロトコル。このプロトコルを使用すると、通信エラーがデータフローを中断した後にアップロード操作を再開できます。 大きなファイルを転送する場合は、ネットワーク中断の可能性があるまたはその他のは、モバイルクライアントアプリケーションからのアップロード時などに、送信エラーが高いです。また、大規模なファイルアップロードを最初から再起動する必要がないため、ネットワーク障害が発生した場合の帯域幅使用量を削減できます。

例:再開可能セッション開始要求

POST /upload/gmail/v1/users/userId/messages/send?uploadType=resumable HTTP/1.1 
Host: www.googleapis.com 
Authorization: Bearer your_auth_token 
Content-Length: 38 
Content-Type: application/json; charset=UTF-8 
X-Upload-Content-Type: message/rfc822 
X-Upload-Content-Length: 2000000 

{ 
"id": string, 
"threadId": string, 
"labelIds": [ 
string 
], 
"snippet": string, 
"historyId": unsigned long, 
"payload": { 
"partId": string, 
"mimeType": string, 
"filename": string, 
"headers": [ 
{ 
"name": string, 
"value": string 
} 
], 
"body": users.messages.attachments Resource, 
"parts": [ 
(MessagePart) 
] 
}, 
"sizeEstimate": integer, 
"raw": bytes 
} 
+0

MR-rebot @例えば おかげで、私がメールを送信しようとしているが、RAW EMLストリームに/インポート既存のメールを復元しようとしていないのです。 /uploadとuploadType = resumableを使用してインポート中に、 {u'error ':{u'code':400、u'message ':u}というエラーが発生しています。エラー ':[{u'domain':u'global '、u'message':u "単一の 'From'ヘッダーが必要です '、u'reason':u'invalidArgument '}}}} –

+0

@ mr-rebot、私はこの例(メールを送る)を試みました。ステータスコード200の空の応答が戻ってきます。私は以下のような応答を期待していますが、空になっています。つまり、応答としてlocation/session_uriはありません。 HTTP/1.1 200 OK 場所:https://www.googleapis.com/upload/gmail/v1/users/userId/messages/send?uploadType=resumable&upload_id=xa298sd_sdlkj2 コンテンツの長さ:0 –

関連する問題