2013-01-16 2 views
1

je vais à Google Drive, en utilisant la clé (P12)Transférer des fichiers sur Google Drive

Je peux parcourir les dossiers, obtenir des données sur les fichiers, obtenir des listes de fichiers dans le lecteur Google. Mais je ne peux pas télécharger le fichier sur Google Drive. L'équipe le tout droit

(est propriétaire)

Pourquoi ne pas me donner la possibilité d'enregistrer le fichier?

Exemple de code que je reçois avec succès une liste de dossiers:

def is_file_in_folder(service, folder_id, file_id): 
    try: 
    service.children().get(folderId=folder_id, childId=file_id).execute() 
    except errors.HttpError, error: 
    if error.resp.status == 404: 
     return False 
    else: 
     print 'An error occurred: %s' % error 
     raise error 
    return True 

Le code exemple, je suis en train d'enregistrer le fichier:

def insert_file(service, title, description, parent_id, mime_type, filename): 
    media_body = MediaFileUpload(filename, mimetype=mime_type, resumable=True) 
    body = { 
    'title': title, 
    'description': description, 
    'mimeType': mime_type 
    } 
    if parent_id: 
    body['parents'] = [{'id': parent_id}] 

    try: 
    file = service.files().insert(body=body, media_body=media_body).execute() 

    return file 
    except errors.HttpError, error: 
    print 'An error occured: %s' % error 
    return None 

montre l'erreur - ERROR

Je suppose que le fichier essaie de charger, mais quelque chose l'empêche, ainsi que (resumable = True), il essaie encore et encore, jusqu'à l'heure.

De quoi ai-je besoin pour télécharger des fichiers?

Essayé en utilisant le code pour créer un dossier dans le lecteur Google, mais montre l'erreur (L'utilisateur authentifié n'a pas l'accès requis au fichier)

Alors, comment obtenir ces droits?

+1

Je commencerais par déterminer quelle était la valeur réelle du code d'état HTTP avec laquelle le serveur a répondu et ensuite comprendre ce que cela signifie. – martineau

+0

J'ai décrit dans la question. Lorsque vous essayez de télécharger le fichier montre: exception httplib.BadStatusLine Lorsque vous essayez de créer un dossier, erreur: L'utilisateur authentifié n'a pas l'accès requis au fichier – Dmitriy

+0

Désolé, je foiré que. Je viens de googler le texte du message d'erreur et j'ai obtenu [ceci] (http://code.google.com/p/google-api-java-client/issues/detail?id=637) ce qui semble indiquer qu'il pourrait s'agir d'un bug . – martineau

Répondre

1

J'ai trouvé le problème. Il apparaît dans l'interface "Google Drive" ont été affichés à droite sur le dossier est en lecture seule sur ce que personne ne peut télécharger des fichiers. Pour cette raison, et donner une erreur et sont seulement autorisés à lire. Par ailleurs, quelqu'un peut savoir comment obtenir un lien direct vers le fichier. Ce format?: http://google.com/my_file.mp3

Questions connexes