{"id":325,"date":"2016-01-04T16:36:30","date_gmt":"2016-01-04T15:36:30","guid":{"rendered":"http:\/\/wordpress.callac.online\/index.php\/mise-en-place-dun-service-tinywebdb\/"},"modified":"2022-01-05T22:41:57","modified_gmt":"2022-01-05T21:41:57","slug":"mise-en-place-dun-service-tinywebdb","status":"publish","type":"page","link":"https:\/\/wordpress.callac.online\/index.php\/numerique\/app-inventor-2\/mise-en-place-dun-service-tinywebdb\/","title":{"rendered":"Mise en place d&rsquo;un service TinyWebDB"},"content":{"rendered":"<h2>TinyDB ou TinyWebDB ?<\/h2>\n<p>Ces deux outils de stockages utilisent une base de donn\u00e9es. On choisit un tag et sa valeur associ\u00e9. On pourra ensuite retrouve une valeur par son tag, puis la manipuler.<\/p>\n<p><strong>TinyDB<\/strong> stocke la base sur l&rsquo;appareil sur lequel l&rsquo;application est install\u00e9. cela veut dire qu&rsquo;elle est propre \u00e0 cette installation.<\/p>\n<p>Pour partager une m\u00eame entre toutes les installations, celle-ci doit se trouver sur internet. Il faudra dans ce cas utiliser l&rsquo;outil <strong>TinyWebDB<\/strong>.<\/p>\n<h2>Comment h\u00e9berger cette base ?<\/h2>\n<p>Sur <a href=\"http:\/\/ai2.appinventor.mit.edu\/reference\/other\/tinywebdb.html\">la page de pr\u00e9sentation de TinyWebDB<\/a>, on propose deux solutions :<\/p>\n<ul>\n<li>pour tester : utiliser un service commun.<\/li>\n<li>pour un usage d\u00e9finitif : cr\u00e9er son propre service.<\/li>\n<\/ul>\n<h2>Probl\u00e8mes rencontr\u00e9s<\/h2>\n<p>La proc\u00e9dure varie sensiblement, selon son syst\u00e8me op\u00e9rationnel. Dans mon cas, j&rsquo;ai rencontr\u00e9 quelques probl\u00e8mes que j&rsquo;ai r\u00e9ussi \u00e0 r\u00e9soudre.<\/p>\n<p>La proc\u00e9dure conseill\u00e9 sur le site AppInventor \u00e9tait peu adapt\u00e9 \u00e0 Linux, je vous en propose une autre bas\u00e9 sur \u00ab\u00a0gcloud\u00a0\u00bb.<\/p>\n<p>L&rsquo;utilisation en local m&rsquo;ayant pos\u00e9 des probl\u00e8mes et ne me servant \u00e0 rien, je ne la propose.<\/p>\n<p>Voici une liste des probl\u00e8mes rencontr\u00e9s mais r\u00e9solus ou contourn\u00e9s :<\/p>\n<ul>\n<li>django.utils<\/li>\n<li>threadsafe<\/li>\n<li>runtime python<\/li>\n<\/ul>\n<h2>Cr\u00e9ation du service TinyWebDB sous Ubuntu<\/h2>\n<p><strong>I) Cr\u00e9ation d&rsquo;un projet sur Google Cloud Platform<\/strong><\/p>\n<p>Se connecter \u00e0 la <a href=\"https:\/\/console.cloud.google.com\/project\">page projet de Google Cloud Platform<\/a>.<\/p>\n<p>Cr\u00e9er un projet que j&rsquo;appelerais pour l&rsquo;exemple \u00ab\u00a0MonProjet\u00a0\u00bb.<\/p>\n<p><strong>II) T\u00e9l\u00e9chargement de gcloud<\/strong><\/p>\n<p>Les explications sont prises de la <a href=\"https:\/\/cloud.google.com\/sdk\/?hl=fr#download\">page de Google Cloud<\/a>.<\/p>\n<p>En r\u00e9sum\u00e9, dans un terminal, apr\u00e8s avoir si besoin install\u00e9 le paquet \u00ab\u00a0curl\u00a0\u00bb :<\/p>\n<p><code><br \/>\ncurl https:\/\/sdk.cloud.google.com | bash<br \/>\n<\/code><\/p>\n<p>Pour relancer le shell :<\/p>\n<p><code><br \/>\nexec -l $SHELL<br \/>\n<\/code><\/p>\n<p>Pour configuer gcloud (compte, projet) :<\/p>\n<p><code><br \/>\ngcloud init<br \/>\n<\/code><\/p>\n<p>En cas de besoin, pour changer de projet :<\/p>\n<p><code><br \/>\ngcloud config set project MonProjet<br \/>\n<\/code><\/p>\n<p><strong>III) T\u00e9l\u00e9chargement et modification du dossier costumwebservice<\/strong><\/p>\n<p>Sur <a href=\"http:\/\/ai2.appinventor.mit.edu\/reference\/other\/tinywebdb.html\">la page de pr\u00e9sentation de TinyWebDB<\/a>, cliquer sur le lien \u00ab\u00a0example code\u00a0\u00bb.<br \/>\nExtraire cette archive et renommer le dossier extrait du nom de votre projet (si vous le souhaitez). Appelons celui-ci \u00ab\u00a0Monprojet\/\u00a0\u00bb pour la suite.<\/p>\n<p>Dans ce dossier, modifier le fichier app.yaml de la sorte :<\/p>\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\">runtime: python27\nthreadsafe: false\napi_version: 1\n\nhandlers:\n- url: \/images\nstatic_dir: images\n\n- url: .*\nscript: main.py\n\nlibraries :\n- name : django\nversion : \"1.4\"<\/pre>\n<p><strong>IV) D\u00e9ploiement du service<\/strong><\/p>\n<p>Dans le terminal :<\/p>\n<p><code><br \/>\ncd MonProjet\/<br \/>\ngcloud preview app deploy app.yaml --promote<br \/>\n<\/code><\/p>\n<p>Sur la <a href=\"https:\/\/console.cloud.google.com\/\">page Google Cloud Platform<\/a>, lorsque vous la rechargez doit appara\u00eetre au centre une partie \u00ab\u00a0App Engine\u00a0\u00bb.<\/p>\n<p>Une fois ouverte, vous verrez votre instance avec en haut \u00e0 droite l&rsquo;adresse de votre service que vous devrez utiliser dans votre application AppInventor.<br \/>\nDans notre cas, \u00e7a ressemble \u00e0 https:\/\/monprojet-1111.appspot.com\/<\/p>\n","protected":false},"excerpt":{"rendered":"<p>TinyDB ou TinyWebDB ? Ces deux outils de stockages utilisent une base de donn\u00e9es. On choisit un tag et sa valeur associ\u00e9. On pourra ensuite retrouve une valeur par son&hellip;<\/p>\n","protected":false},"author":1,"featured_media":0,"parent":980,"menu_order":4,"comment_status":"closed","ping_status":"closed","template":"","meta":{"footnotes":""},"class_list":["post-325","page","type-page","status-publish","hentry"],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v27.1.1 - https:\/\/yoast.com\/product\/yoast-seo-wordpress\/ -->\n<title>Mise en place d&#039;un service TinyWebDB - Maths &amp; Num\u00e9rique<\/title>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/wordpress.callac.online\/index.php\/numerique\/app-inventor-2\/mise-en-place-dun-service-tinywebdb\/\" \/>\n<meta property=\"og:locale\" content=\"fr_FR\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Mise en place d&#039;un service TinyWebDB - Maths &amp; Num\u00e9rique\" \/>\n<meta property=\"og:description\" content=\"TinyDB ou TinyWebDB ? Ces deux outils de stockages utilisent une base de donn\u00e9es. On choisit un tag et sa valeur associ\u00e9. On pourra ensuite retrouve une valeur par son&hellip;\" \/>\n<meta property=\"og:url\" content=\"https:\/\/wordpress.callac.online\/index.php\/numerique\/app-inventor-2\/mise-en-place-dun-service-tinywebdb\/\" \/>\n<meta property=\"og:site_name\" content=\"Maths &amp; Num\u00e9rique\" \/>\n<meta property=\"article:modified_time\" content=\"2022-01-05T21:41:57+00:00\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"Dur\u00e9e de lecture estim\u00e9e\" \/>\n\t<meta name=\"twitter:data1\" content=\"2 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"WebPage\",\"@id\":\"https:\/\/wordpress.callac.online\/index.php\/numerique\/app-inventor-2\/mise-en-place-dun-service-tinywebdb\/\",\"url\":\"https:\/\/wordpress.callac.online\/index.php\/numerique\/app-inventor-2\/mise-en-place-dun-service-tinywebdb\/\",\"name\":\"Mise en place d'un service TinyWebDB - Maths &amp; Num\u00e9rique\",\"isPartOf\":{\"@id\":\"https:\/\/wordpress.callac.online\/#website\"},\"datePublished\":\"2016-01-04T15:36:30+00:00\",\"dateModified\":\"2022-01-05T21:41:57+00:00\",\"breadcrumb\":{\"@id\":\"https:\/\/wordpress.callac.online\/index.php\/numerique\/app-inventor-2\/mise-en-place-dun-service-tinywebdb\/#breadcrumb\"},\"inLanguage\":\"fr-FR\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/wordpress.callac.online\/index.php\/numerique\/app-inventor-2\/mise-en-place-dun-service-tinywebdb\/\"]}]},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/wordpress.callac.online\/index.php\/numerique\/app-inventor-2\/mise-en-place-dun-service-tinywebdb\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Accueil\",\"item\":\"https:\/\/wordpress.callac.online\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Num\u00e9rique\",\"item\":\"https:\/\/wordpress.callac.online\/index.php\/numerique\/\"},{\"@type\":\"ListItem\",\"position\":3,\"name\":\"App Inventor 2\",\"item\":\"https:\/\/wordpress.callac.online\/index.php\/numerique\/app-inventor-2\/\"},{\"@type\":\"ListItem\",\"position\":4,\"name\":\"Mise en place d&#8217;un service TinyWebDB\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/wordpress.callac.online\/#website\",\"url\":\"https:\/\/wordpress.callac.online\/\",\"name\":\"Maths & Num\u00e9rique\",\"description\":\"Des outils pour les enseignants de math\u00e9matiques et de num\u00e9rique\",\"publisher\":{\"@id\":\"https:\/\/wordpress.callac.online\/#\/schema\/person\/04061f1ca2c2c42039142a704be95940\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/wordpress.callac.online\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"fr-FR\"},{\"@type\":[\"Person\",\"Organization\"],\"@id\":\"https:\/\/wordpress.callac.online\/#\/schema\/person\/04061f1ca2c2c42039142a704be95940\",\"name\":\"dlefur\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"fr-FR\",\"@id\":\"https:\/\/wordpress.callac.online\/#\/schema\/person\/image\/\",\"url\":\"https:\/\/secure.gravatar.com\/avatar\/4a9e17be136808c6597f28aa2b6c13126dab066fdc2198ff60090972c9b7fafc?s=96&d=mm&r=g\",\"contentUrl\":\"https:\/\/secure.gravatar.com\/avatar\/4a9e17be136808c6597f28aa2b6c13126dab066fdc2198ff60090972c9b7fafc?s=96&d=mm&r=g\",\"caption\":\"dlefur\"},\"logo\":{\"@id\":\"https:\/\/wordpress.callac.online\/#\/schema\/person\/image\/\"},\"description\":\"Enseignant de math\u00e9matiques Lyc\u00e9e Pasteur S\u00e3o Paulo\",\"sameAs\":[\"http:\/\/wordpress.callac.online\"]}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"Mise en place d'un service TinyWebDB - Maths &amp; Num\u00e9rique","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/wordpress.callac.online\/index.php\/numerique\/app-inventor-2\/mise-en-place-dun-service-tinywebdb\/","og_locale":"fr_FR","og_type":"article","og_title":"Mise en place d'un service TinyWebDB - Maths &amp; Num\u00e9rique","og_description":"TinyDB ou TinyWebDB ? Ces deux outils de stockages utilisent une base de donn\u00e9es. On choisit un tag et sa valeur associ\u00e9. On pourra ensuite retrouve une valeur par son&hellip;","og_url":"https:\/\/wordpress.callac.online\/index.php\/numerique\/app-inventor-2\/mise-en-place-dun-service-tinywebdb\/","og_site_name":"Maths &amp; Num\u00e9rique","article_modified_time":"2022-01-05T21:41:57+00:00","twitter_card":"summary_large_image","twitter_misc":{"Dur\u00e9e de lecture estim\u00e9e":"2 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"WebPage","@id":"https:\/\/wordpress.callac.online\/index.php\/numerique\/app-inventor-2\/mise-en-place-dun-service-tinywebdb\/","url":"https:\/\/wordpress.callac.online\/index.php\/numerique\/app-inventor-2\/mise-en-place-dun-service-tinywebdb\/","name":"Mise en place d'un service TinyWebDB - Maths &amp; Num\u00e9rique","isPartOf":{"@id":"https:\/\/wordpress.callac.online\/#website"},"datePublished":"2016-01-04T15:36:30+00:00","dateModified":"2022-01-05T21:41:57+00:00","breadcrumb":{"@id":"https:\/\/wordpress.callac.online\/index.php\/numerique\/app-inventor-2\/mise-en-place-dun-service-tinywebdb\/#breadcrumb"},"inLanguage":"fr-FR","potentialAction":[{"@type":"ReadAction","target":["https:\/\/wordpress.callac.online\/index.php\/numerique\/app-inventor-2\/mise-en-place-dun-service-tinywebdb\/"]}]},{"@type":"BreadcrumbList","@id":"https:\/\/wordpress.callac.online\/index.php\/numerique\/app-inventor-2\/mise-en-place-dun-service-tinywebdb\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Accueil","item":"https:\/\/wordpress.callac.online\/"},{"@type":"ListItem","position":2,"name":"Num\u00e9rique","item":"https:\/\/wordpress.callac.online\/index.php\/numerique\/"},{"@type":"ListItem","position":3,"name":"App Inventor 2","item":"https:\/\/wordpress.callac.online\/index.php\/numerique\/app-inventor-2\/"},{"@type":"ListItem","position":4,"name":"Mise en place d&#8217;un service TinyWebDB"}]},{"@type":"WebSite","@id":"https:\/\/wordpress.callac.online\/#website","url":"https:\/\/wordpress.callac.online\/","name":"Maths & Num\u00e9rique","description":"Des outils pour les enseignants de math\u00e9matiques et de num\u00e9rique","publisher":{"@id":"https:\/\/wordpress.callac.online\/#\/schema\/person\/04061f1ca2c2c42039142a704be95940"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/wordpress.callac.online\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"fr-FR"},{"@type":["Person","Organization"],"@id":"https:\/\/wordpress.callac.online\/#\/schema\/person\/04061f1ca2c2c42039142a704be95940","name":"dlefur","image":{"@type":"ImageObject","inLanguage":"fr-FR","@id":"https:\/\/wordpress.callac.online\/#\/schema\/person\/image\/","url":"https:\/\/secure.gravatar.com\/avatar\/4a9e17be136808c6597f28aa2b6c13126dab066fdc2198ff60090972c9b7fafc?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/4a9e17be136808c6597f28aa2b6c13126dab066fdc2198ff60090972c9b7fafc?s=96&d=mm&r=g","caption":"dlefur"},"logo":{"@id":"https:\/\/wordpress.callac.online\/#\/schema\/person\/image\/"},"description":"Enseignant de math\u00e9matiques Lyc\u00e9e Pasteur S\u00e3o Paulo","sameAs":["http:\/\/wordpress.callac.online"]}]}},"_links":{"self":[{"href":"https:\/\/wordpress.callac.online\/index.php\/wp-json\/wp\/v2\/pages\/325","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/wordpress.callac.online\/index.php\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/wordpress.callac.online\/index.php\/wp-json\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/wordpress.callac.online\/index.php\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/wordpress.callac.online\/index.php\/wp-json\/wp\/v2\/comments?post=325"}],"version-history":[{"count":2,"href":"https:\/\/wordpress.callac.online\/index.php\/wp-json\/wp\/v2\/pages\/325\/revisions"}],"predecessor-version":[{"id":2830,"href":"https:\/\/wordpress.callac.online\/index.php\/wp-json\/wp\/v2\/pages\/325\/revisions\/2830"}],"up":[{"embeddable":true,"href":"https:\/\/wordpress.callac.online\/index.php\/wp-json\/wp\/v2\/pages\/980"}],"wp:attachment":[{"href":"https:\/\/wordpress.callac.online\/index.php\/wp-json\/wp\/v2\/media?parent=325"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}