2015-03-31 7 views
1

Je télécharge des documents dans Google Drive avec succès, mais mes métadonnées ne semblent pas me répondre correctement. Ci-dessus est mon instruction d'insertion, ci-dessous est ce que j'envoie en tant que détails sur le document.API Google Drive, métadonnées

{description = XXXXXXX facture, fileExtension = pdf, indexableText = {text = XXXXXXX facture}, étiquettes = {restreint = false}, mimeType = application/pdf, les parents = [{id = 0B_owsnWRsIy7S1VsWG1vNTYzM1k }], propriétés = [{key = DocumentType, valeur = 11}], title = XXXXXXX facture}

Quand je fais un get pour ce même document en utilisant ce code

protected InputStream downloadFile(Drive service, File file)throws IOException { 
    if (file.getDownloadUrl() != null && file.getDownloadUrl().length() > 0) { 

     HttpResponse resp = 
      service.getRequestFactory().buildGetRequest(new GenericUrl(file.getDownloadUrl())) 
       .execute(); 
     return resp.getContent(); 
    } 
    else { 
     // The file doesn't have any content stored on Drive. 
     return null; 
    } 
} 

Je récupère la plus grande partie du texte moins le texte indexable et l'extension de fichier, est-ce correct (ne veut pas montrer, car il contient beaucoup d'informations que le bruit)?

Répondre

2

Deux problèmes distincts ici.

1) fileExtension est un champ en lecture seule, donc il est ignoré. Lors de la récupération de l'information, il est dérivé du titre/nom d'origine. Comme votre titre ne comprend pas ".pdf", il est vide.

2) indexableText est en écriture seule, nous ne vous autorisons pas à le récupérer une fois défini; il est uniquement utilisé par le moteur de recherche pour traiter les requêtes de recherche. Vous pouvez en savoir plus sur les différentes propriétés de métadonnées de file resource in our documentation.