私はドライブファイルの名前を、アプリからの検索を容易にするための非常に特殊な規則で指定しています。 v3 Drive API(files.list)の検索機能は、3週間前には最近働いていて、その後動作を停止しています。例えばfiles.listの動作が変更されたようです
は、以下のファイル、
"ABC-123テンプレート"、 "ABC-123ゴーゴー"、 "ABC-123ボーボボ"
を使用して... APIを介して検索するために私を可能にします
name contains 'ABC-123'
この検索では、3つのファイルがすべて返されます。代わりに結果を返しません。ドライブのウェブインターフェースで同じクエリが成功し、規約はdocumentationに記載されたルールに従うことに注意してください。
これは機能していましたが、現在停止しています。検索APIが変更されましたか?私は実装で他のファイルを見つけることができます。命名規則を使用するファイルではありません。
ここに、NodeJSでのリクエストの完全なコードスニペットがあります。
Google.prototype.findFiles = function(file_prefix, callback) {
var service = google.drive('v3');
service.files.list({
q: "name contains '" + file_prefix + "'",
fields: 'nextPageToken, files(id, name)',
spaces: 'drive',
corpus: 'domain',
auth: this.auth
}, function(err, response) {
if(err) {
console.log('Error : findFiles failed. ' + err);
callback(err);
} else {
callback(null,response.files);
}
});
};
GoogleのAPI Explorerを使用すると、このリクエストが機能することがわかりました。コンソール上の私のGoogleプロジェクト設定の設定に問題があるように感じます。 – Greg
^^ *判明していない*が、それは私の下の答えにつながった。 – Greg
あなたの名前にhttps://developers.google.com/drive/v2/reference/files/listのqフィールドに「ABC-123」が含まれていると入力すると、「エラー400、無効なクエリ」が表示されます。 –