Mon application Accède à des documents de tableur sur Google privés pour le compte d'un utilisateur autorisé. Il semble que l'API de Google s'attend à ce que les développeurs demandent d'abord une liste de toutes les documents de tableur à la disposition d'un utilisateur autorisé avant de pouvoir obtenir des clés de tableur particuliers. Je voulais trouver une solution de contournement à cela et, éventuellement, en extrayant la valeur de paramètre code> de la clé code> des URL de tableur d'URL qui ressemblent à ceci: p>
Il était assez simple pour simplement casser la chaîne pour pointer où je pourrais récupérer la valeur code> de la clé code> assez facile sans avoir besoin d'une regex. P>
Récemment, même si je ne sais pas à quel point les URL sont récentes, je remarque que les feuilles de diffusion de Google Draps récemment créées se présentent dans ce formulaire: P>
J'ai également pu extraire la clé de cette chaîne d'URL, mais je suis juste curieux de la différence entre les deux URL: p>
Merci! P> https://docs.google.com/spreadsheet/cccc?key= {Quelque touche longue ici} & usp = drive_web # gid = 0 code> p> p>
https://docs.google.com/spreadsheets/d/ {une touche longue ici} / Modifier # gid = 0 code> p> p> p>
3 Réponses :
Où obtenez-vous l'URL? Vous ne devriez pas compter sur des formats d'URL spécifiques, ceux-ci sont sujets à changement et non destinés à être fiables. Vous devriez pouvoir obtenir juste l'ID en spécifiant le paramètre "champs" dans votre demande. Voir https://developers.google.com/drive/v2/reference/files/ Liste p>
Je reçois l'URL de la barre d'adresse du navigateur Web. Je ne veux pas que les utilisateurs devaient creuser tous leurs fichiers pour obtenir les données d'une feuille de calcul unique. Je veux qu'ils ne collent juste une URL dans l'interface utilisateur de mon application. On dirait que c'est la façon la plus directe d'y aller. Encore une fois mes questions: quelle est la signification entre les deux formats? Pourquoi sommes-nous obligés d'obtenir des données de feuille de calcul uniquement après avoir récupéré une liste de documents?
Si vous utilisez une feuille de calcul unique, on dirait que vous devriez peut-être utiliser Appscript et les nouveaux add-ons à lier directement dans la feuille de calcul. Voir développeurs.google.com/apps-script/reference/spreadsheet
Je ne suis pas sûr de comprendre votre suggestion. Je comprends que les scripts d'applications sont exécutés sur les serveurs de Google. Est-il possible d'appeler un script d'application de My JavaScript en cours d'exécution dans une application "Desktop" qui a été autorisée? Puis-je faire appel à un certain nombre de critères d'API?
Je ne sais pas ce que vous essayez d'accomplir, il est donc difficile de dire quelle est la bonne solution ici. Comme je l'ai dit, vous devriez pas i> dépendre de formats d'URL spécifiques, de sorte que ceux-ci sont sujets à changement sans préavis. Si vous ne vous souciez pas de votre application étant brisée au hasard si elle change, alors allez-y. De meilleures options incluent: L'utilisation de l'un des cueilleurs de fichier fournis pour que l'utilisateur sélectionne un fichier, à l'aide de la capacité de la liste pour donner à l'utilisateur certains à sélectionner à partir de, à l'aide de Appscript pour intégrer un menu dans l'application Spreadsheet.
Merci, je vais chercher à changer l'interface utilisateur de mon application afin que les utilisateurs recherchent pour choisir le DOC au lieu de coller une URL dans un champ.
Ils travaillent en ligne uniquement et limitée à environ 400 000 cellules par feuille de calcul. P>
URL de style ancien P>
https://docs.google.com/spreadsheets/d/{some long key here}/edit#gid=0
Merci d'avoir clarifié la signification B / W les deux URL. Dans la réponse de votre thread de référence référencé, l'auteur fait un nouveau document avec le code, donc bien sûr que l'identifiant est récupérable. Cependant, si tout ce que vous avez est l'URL elle-même? Apparemment, il n'y a pas de meilleure pratique pour extraire une clé de l'URL? J'utilise la vanille simple JavaScript dans mon application.
Une autre façon serait de simplement répertorier tous les feuilles de calcul des utilisateurs. Énumérez les feuilles de calcul par nom. .... Mais je suis d'accord avec Cheryl Simon, extrayant l'identifiant de l'URL est un hack désordonné et difficile à maintenir en tant que solution.
Oui, j'ai fini par la mettre en œuvre comme ça, mais je rencontre maintenant une question lors de la récupération des feuilles de calcul. Lorsque je demande une demande pour obtenir les feuilles de calcul de Google's API me dira que le fichier a été supprimé même quand il n'a pas. Apparemment, c'est un problème connu? Voici une question que j'ai commencé à la suite de la mise en œuvre de la méthode de Cheryl: Stackoverflow.com/questions/23377824/...
Cloudward a résolu ceci à travers des extraits de nuages. Voici deux personnes qui peuvent être utiles, il y a beaucoup d'autres à explorer également. p>
Publier une liste simple de la feuille de Google: https://snippets.cloudward.com/app_listing.espx?template_id=0d367025e8b5f402cd510905cade1d29&account_id = & cat_id = C478885BB325028151AA9060422C67F P>
Publier Google Doc par ID:
https://snippets.cloudward.com/app_listing.espx?template_id=51925e7ed2166d7d83a8c32fa1ee88dd&account_id= a> p>
J'espère que cela aide. P>
Bob p>