2017-01-27 4 views
1

GoogleドライブAPI v3を使用してファイルを取得しています。ファイルとリストファイルをアップロードできますが、files.get呼び出しは 'false'を返します。パラメータ、文書で説明したように、私は戻ってメタデータを取得:ドキュメントには、私は「『メディアに』 Alt」を削除した場合Javascript GoogleドライブAPIが応答として「false」を返すのはなぜですか?

var contentRequest = gapi.client.drive.files.get({ 
    fileId: fileId, 
    alt: 'media' 
    }); 
    contentRequest.execute(function(resp) { 
    console.log(resp); // resp = false 
    }); 

https://developers.google.com/drive/v3/reference/files/get)かなりまばらです。

gapi.client.request 
    ({ 
    'path': '/drive/v3/files/'+fileId, 
    'method': 'GET', 
    'params': {'fileId': fileId, 'alt': 'media'}, 
    'headers': {'Authorization': 'Bearer ' + gapi.auth.getToken().access_token } 
    }).execute(function(file) { 
     // file = false 
     }); 

私は離れてレスポンスがJSON-解析可能でない場合は「偽」であると述べているGoogleのクライアントREST APIドキュメント、中に埋設されて見つけることができるという希望の唯一のブレッドクラム:私も使ってみました。 https://developers.google.com/api-client-library/javascript/features/promises

ファイルの種類は違いはありません...これまでのところ、私は.htmlと.txtを試しました。

答えて

0

私は、これはあなたが探しているリンクであると考えています。ファイルをダウンロード)

https://developers.google.com/drive/v3/web/manage-downloads

は、少なくとも読み取りアクセス権を持つユーザーが必要です。さらに、ファイルコンテンツの読み取りを許可するスコープでアプリの権限を付与する必要があります。たとえば、drive.readonly.metadataスコープを使用するアプリケーションは、ファイルのコンテンツをダウンロードする権限がありません。編集権限を持つユーザは、viewersCanCopyContentフィールドをtrueに設定することによって、読み取り専用ユーザによるダウンロードを制限することができます。

+0

これは質問に答えません。私は同じ問題を抱えていて、既に参照されているリンクを読んでいました。リクエストに{driveId:id、alt: 'media'}を使用して、ドライブにフルアクセスして応答することができません。 –

0

コールバックの2番目のパラメータを使用する必要があります。これには生の応答が含まれている必要があります。

request.execute(function(jsonResp, rawResp) { 
    console.log('rawResp: ', rawResp); 
    var respObject = JSON.parse(rawResp); // rawResp is encoded JSON string with header, body, etc. 
    var respBody = respObject.gapiRequest.data.body; // in my case here it outputs the text of my txt file 
}); 

要求が成功または失敗したときに実行するコールバック関数。 jsonRespには、JSONとして解析されたレスポンスが含まれています。レスポンスがJSONでない場合、このフィールドはfalseになります。 rawRespはHTTP応答です。これはJSONで、body、headers、status、およびstatusTextフィールドを含むオブジェクトに解析できます。

SRC:https://developers.google.com/api-client-library/javascript/reference/referencedocs#gapiclientrequest

P.S.ニースは "JSONで解析できない"ということをドキュメントで見つけました。それは私がこれを解決するのに役立ちました!

関連する問題