2017-02-17 5 views
0

Dans notre application, les utilisateurs peuvent soumettre un lien vers un document Google (à partir de Google Drive). Nous voulons être en mesure de vérifier si le document est partagé de manière à ce que toute personne disposant du lien puisse accéder au document. Comment est-ce possible (de préférence en utilisant Javascript).Détermination des paramètres de partage de Google Document par le lien

Un tel lien pourrait être: https://docs.google.com/a/peergrade.io/document/d/1_PgKkr7e4E1uEE4O_SHswq4tjBDLthg0KxGXjtIMLio/edit?usp=sharing qui n'est pas partagé pour les personnes externes.

Notre application est en cours d'exécution dans le navigateur. Le cas d'utilisation est que les étudiants de notre application peuvent présenter un document Google que d'autres personnes doivent regarder. Certains étudiants oublient de partager leur document à l'avance, ce qui entraîne des problèmes. Nous voulons alerter l'étudiant que son document n'est pas partagé correctement.

Nous n'avons pas besoin d'accéder réellement au document, nous nous demandons simplement s'il est accessible à d'autres personnes. L'utilisation d'une API serait parfaite, mais à ce stade, nous avons seulement le lien vers le document disponible.

+0

Cela nécessite plus d'informations. De quel type d'application s'agit-il, une application Web fonctionnant dans le navigateur? Comment vous attendez-vous à obtenir cette information si le document n'est * pas * accessible aux autres? Votre application, qui ne sera pas connectée à Google Docs et même si elle l'était, sans doute pas avec les informations d'identification de l'utilisateur? Si c'est? (Et en y réfléchissant, cela ne suffirait-il pas à prouver qu'il n'est pas accessible)? –

+0

De plus, Google pourrait changer l'implémentation après quelques jours, donc vous ne pouvez pas compter sur la chaîne. Vérifiez devrait être si google drive expose une API pour faire cela au lieu de cette question. –

+0

Merci pour les questions. Je vais mettre à jour la question. – utdiscant

Répondre

2

vous pouvez obtenir des métadonnées de fichiers en utilisant la demande suivante

GET https://www.googleapis.com/drive/v3/files/{FILE_ID}?fields=id%2Ckind%2CmimeType%2Cname%2Cshared&key={YOUR_API_KEY} 

note la balise shared dans la demande

qui vous donnera quelque chose comme

{ 


"kind": "drive#file", 
"id": "bla_bla_gibberish_id", 
"name": "Sample File", 
"mimeType": "application/vnd.google-apps.spreadsheet", 
"shared": true 
} 

Maintenant, pour obtenir fileID d'un lien:

function getIdFromUrl(url) { return url.match(/[-\w]{25,}/); } 

tel que posté here