以前の 2 つの投稿については知っています。
しかし、「本当に最新のリリースを使用していますか」という回答を除けば、質問者の誰も、「はい」か「いいえ」か、または答えを見つけることができたかどうかを言うために戻ってきませんでした.
私は彼らと同じことをしているので、最新の apiDriveService.phpを使用しており、最終リビジョンは 2012 年 6 月です。
データは正しく見つかりましたが、挿入行に到達すると、明らかに何か問題が発生します。
そして、SDK php の例が正しく動作しているように見える理由がわかりません。
これは Google API コンソールの問題ですか? または、特別な方法でデータをエンコードする必要がありますか?
編集: apiDriveService ファイルで、次の行を確認できます。
$this->files = new FilesServiceResource($this, $this->serviceName, 'files', json_decode('{"methods": {
"insert": {"scopes": ["https://www.googleapis.com/auth/drive", "https://www.googleapis.com/auth/drive.file"],
"parameters": {"convert": {"default": "false", "type": "boolean", "location": "query"}, "targetLanguage": {"type": "string", "location": "query"}, "sourceLanguage": {"type": "string", "location": "query"}, "ocrLanguage": {"type": "string", "location": "query"}, "pinned": {"default": "false", "type": "boolean", "location": "query"}, "ocr": {"default": "false", "type": "boolean", "location": "query"}, "timedTextTrackName": {"type": "string", "location": "query"}, "timedTextLanguage": {"type": "string", "location": "query"}}, "supportsMediaUpload": true, "request": {"$ref": "File"}, "mediaUpload": {"maxSize": "10GB", "accept": ["*/*"], "protocols": {"simple": {"path": "/upload/drive/v2/files", "multipart": true}, "resumable": {"path": "/resumable/upload/drive/v2/files", "multipart": true}}}, "id": "drive.files.insert", "httpMethod": "POST", "path": "files", "response": {"$ref": "File"}}, ...);
私が送信しているパラメータには、data と mimetypeがあります:
$created = $apiService->files->insert($driveFile, array('data' => $data,'mimeType' => $mimeType));
また、挿入関数には、データと MIME タイプを含む array_merge があります。
public function insert(DriveFile $postBody, $optParams = array()) {
$params = array('postBody' => $postBody);
$params = array_merge($params, $optParams);
$data = $this->__call('insert', array($params));
if ($this->useObjects()) {
return new DriveFile($data);
} else {
return $data;
}
}
上記の行の挿入部分にそれらが見つかりません。それと関係あるの?