私はGAE Javaアプリを開発しており、PDFファイルをユーザーのGoogleドライブにアップロードする必要がありますが、アップロードは常に失敗し、いくつかのコードサンプルを既に確認したため、何が問題なのかわかりません.
import com.google.api.services.drive.Drive;
import com.google.api.services.drive.model.File;
.
.
.
byte[] pdfContent = <... 52kb PDF file ...>
ByteArrayContent mediaContent = new ByteArrayContent("application/pdf", pdfContent);
File myPDF = new File();
myPDF.setTitle("Sample PDF");
myPDF.setDescription("Sample PDF");
Drive driveService = new Drive.Builder(HTTP_TRANSPORT, JSON_FACTORY, getStoredCredential()).build();
Drive.Files.Insert insert = driveService.files().insert(hugePDF, mediaContent);
insert.getMediaHttpUploader().setChunkSize(1024 * 1024);
File file = insert.execute();
このアップロード コードは常に Error: 400 OK を取得します。
{
"error": {
"errors": [
{
"domain": "global",
"reason": "badRequest",
"message": "Bad Request"
}
],
"code": 400,
"message": "Bad Request"
}
}
Google ドライブ ライブラリを使用しています: google-api-services-drive-v2-rev1-1.7.2-beta.jar
ユーザーの Google ドライブからファイルを一覧表示またはダウンロードできるので、資格情報は問題ありません。