web-dev-qa-db-fra.com

Puis-je faire en sorte que les feuilles de calcul Google Drive agissent comme une base de données MySQL?

Puis-je utiliser une feuille de calcul Google Drive comme si elle était (similaire à) une base de données MySQL?

Je pense à l'utiliser comme base de données de joueurs pour un jeu Web HTML/JavaScript. Le nom d'utilisateur, le mot de passe et le score du joueur, entre autres, seraient enregistrés dans la base de données. Ce serait vraiment intéressant si cela pouvait réellement fonctionner, mais il doit bien sûr être sécurisé et privé pour qu'aucun joueur (ou quiconque sur Internet d'ailleurs) ne puisse y accéder sauf le propriétaire du tableur qui serait moi par exemple .

Je sais que Google Apps Script permet à un utilisateur d'accéder à sa propre feuille de calcul et d'y lire/écrire, mais existe-t-il un moyen de permettre aux autres utilisateurs de "sauvegarder leur score" dans MA feuille de calcul SANS leur donner la permission de visualiser/modifier le feuille de calcul directement?

En outre, je suppose que PHP/Python/un autre langage côté serveur devrait être utilisé afin de masquer mes informations de compte qui, je suppose, seraient également nécessaires pour ouvrir et fermer la connexion avec ma feuille de calcul.

Quoi qu'il en soit, je me demande simplement si cela est possible. Transformer littéralement une feuille de calcul Google Drive en une base de données dans laquelle les joueurs peuvent mettre à jour leur score sans y avoir directement accès.

Cela peut être une idée stupide, donc vos opinions sont les bienvenues!

Merci d'avance!

19
Jacob

Les réponses indiquant que vous avez besoin d'un serveur supplémentaire ou oauth sont incorrectes. Publiez simplement un service appscript (public anonyme) en utilisant vos autorisations. Pour toutes les opérations, transmettez toujours le nom d'utilisateur et le mot de passe afin de valider les utilisateurs à chaque appel . Appelez le service à partir du client js en utilisant ajax. Stockez-le dans scriptdb [mise à jour: scriptDb est obsolète maintenant]. Si vous utilisez une feuille de calcul pour le stockage, elle deviendra lente avec de nombreuses lignes.

Dans tous les cas, ce sera lent si vous utilisez appscript.

3
Zig Mandel

C'est la bonne façon de le faire.n autre post expliquant la même idée. Essentiellement, nous publions la feuille de calcul et la questionnons en utilisant une syntaxe semblable à "sélectionner". Par exemple: cette requête qui lit quelque chose comme:

https://spreadsheets.google.com/tq?tqx=out:html&tq=select+B,C,I&key=phNtm3LmDZEObQ2itmSqHIA

C'est pour interroger des données (lecture). Pour l'insertion, vous pouvez utiliser les formulaires google (créer un formulaire, voir son html et le soumettre à l'aide d'une demande de publication http). Je n'ai pas encore exploré la mise à jour.

Et oui, cela doit être fait côté serveur.

6
Jus12

Sans service côté serveur qui implémente une autre couche d'authentification pour les bibliothèques clientes et utilise l'authentification Google pour parler à Drive, ce n'est pas possible.

0
Burcu Dogan