Danser la Notification réseau (4 / 6 étapes)

Étape 4: Le serveur web

Choix de site web server
Un outil commun pour le prototypage web Heroku, qui est un service qui vous permet de lancer facilement une application web. Il prend en charge une variété de cadres d’application web (normalisés façons de programmes de structure qui tournent des sites) dans une variété de langues, une grande documentation sur la façon de le faire. Il élimine le besoin de vous faire tourner votre propre serveur Linux (qui magnifiquement, il se cache sous le capot) pour héberger votre application web. Si vous ne savez pas ce que cela signifie ou a une idée comment le faire, louent les cieux Heroku existe. Et pour la plupart des choses que vous devrez faire des prototypes, c’est gratuit.

Au sein d’Heroku, il y a plusieurs cadres d’application web avec que vous pouvez aller. J’ai été épris de la simplicité de Python et la grande variété de modules créés pour elle, alors j’ai décidé d’aller avec Python exécutant la fiole et la bouteille. Ballon est un simple cadre de web de Python qui gère l’adressage de vos pages et exécute les structures logiques et accède aux bases de données si nécessaire. Fiole, puis utilise le module Python bouteille comme un moteur de template : bouteille prend surtout préremplies modèles HTML j’ai créé et se nourrissent dans des informations dynamiques de mes bases de données, chaque fois que le site est accessible. (techniquement la bouteille peut faire tout ce ballon, je peux penser, mais il m’a été recommandé d’utiliser un flacon pour le routage avec Heroku et bouteille pour la création de modèles).

Formulaire de demande en ligne
Vous pouvez lancer une application web pour travailler sur Heroku pour la première fois en une heure seulement en tutoriels suivants. Les principales étapes sont :

Utilisez votre propre adresse web
Heroku attribue à votre application une adresse (habituellement les APPNAME.herokuapp.com). Si vous souhaitez utiliser votre propre nom de domaine pour votre application (par exemple, j’ai voulu www.istripdancing.com au lieu de dancebutton.herokuapp.com), vous devrez acheter votre propre nom de domaine et le rediriger vers l’adresse Heroku. J’ai utilisé planer d’acheter mon nom de domaine pour 10 $ pour un an. J’ai entendu vous pouvez obtenir domaines moins cher par un autre service, mais je n’ai pas regardé dedans encore. Après que vous avez acheté le domaine, il est incroyablement simple à transmettre les demandes à votre domaine vers l’app Heroku (voir capture instantanée).

Heroku détails
Une fois que vous avez tout vers le haut et course à pied, si vous n’avez pas fait ce genre de choses avant qu’il y plusieurs outils vous apprendrez que vous transformez votre première application Heroku pour faire votre appel d’offres. Voici un bref aperçu d’obtenir votre tête au bon endroit.

Demande de base du Heroku processus en cours d’exécution
Pour exécuter une application dans Heroku avec Python et fiole, Heroku recherche le fichier app.py, qui doit être structuré selon les nuances de la fiole. Avant d’exécuter le fichier, Heroku examine le fichier requirements.txt pour déterminer quels modules Python sont requises pour exécuter le serveur. Il y a 1 million de modules Python et chaque application doit habituellement seulement quelques modules installé pour s’exécuter. Heroku installe ces modules, puis tourne une instance du Python exécutant votre application. Il est important que lorsque vous développez votre application, vous comprenez le Python Virtualenv (environnement virtuel) et la mise à jour requirements.txt correctement (décrit ci-dessous). App.py raconte Heroku quoi faire lorsqu’une demande est présentée à certaines adresses/routes au sein de votre site (une fonction pour le serveur web fonctionne est associée à chaque parcours). Ces fonctions de routage retournent le code brut à afficher dans le navigateur. L’exemple le plus simple est démontrée dans le didacticiel Heroku pour commencer : l’itinéraire d’application par défaut retourne simplement le texte « Hello World », qui s’affichera dans le navigateur lorsque quelqu'un va à cette adresse.

Création de pages Web dynamiques avec Heroku
Si vous vouliez retourner quelque chose de plus intéressant dans le navigateur, vous pourriez renvoyer HTML qui est déterminée selon l’état de votre serveur. Pour ce faire, j’ai utilisé le module Python bouteille. J’ai créer un modèle HTML avec tout le texte statique et mise en forme, que je veux sur ma page et puis spécifiez contenants des informations dynamiques dans le template avec {{variable}} (un particulier de bouteille). Pour remplir cet espace avec les informations de mon serveur, j’utilise la fonction de modèle au sein de la bouteille sur le retour de ma fonction de fiole (bottle.template(...)).

Changer et redéployer votre application web avec Heroku
Avec Heroku, vous travaillez sur des fichiers locaux sur votre ordinateur, puis lorsque vous souhaitez mettre à jour votre serveur, vous « pousser » les changements d’Heroku avec Git. Git est une boîte de Pandore à l’intérieur d’une boîte de Pandore lui-même, mais essentiellement c’est un système de contrôle de révision pour le code - une façon élégante de dire qu’il assure le suivi de vos modifications pour vous. Vous écrivez votre code, et chaque fois que vous souhaitez Git pour stocker votre code actuel, vous « validez » vos modifications et pouvez restaurer votre code à n’importe quel état commis précédemment, quand vous le voulez. Git peut être configuré pour avoir révision principale de base de données en ligne (un exemple gratuit est GitHub). Dans notre cas, le dépôt principal est Heroku, et chaque fois que nous voulons mettre à jour le serveur, nous avons simplement « pousser » notre version la plus récente à elle. Vous pouvez trouver les détails comment utiliser Git avec Heroku ici. Si vous voulez en savoir plus sur Git :

Travaillant localement
Les dépendances peuvent être une source importante de maux de tête pour les personnes utilisant Python sur différentes machines, si vous ne faites pas attention. Imaginez que j’ai fait mon propre module Python qui me permet d’appeler myModule.myFunction(), et je l’utiliser dans mon programme de Python. Si je vous donne simplement mon fichier Python sans le module, votre ordinateur n’aura aucune idée quel myModule fait allusion. Pour ce faire, nous utilisons un environnement virtuel avec Virtualenv, ou un cas isolé de Python où nous avons un contrôle direct sur ce qui est installé, ainsi qu’un flux de travail bien conçu pour nos programmes en cours d’exécution sur des ordinateurs différents. Un moyen plus simple de visualiser ceci : vous avez deux ordinateurs, celui qui possède Photoshop d’Adobe et de Microsoft Office, l’autre avec aucun logiciel. Les fichiers Excel et les images que vous créez sur le premier ordinateur ne peuvent être ouvert sur le second, parce que l’ordinateur ne possède pas les programmes (ou modules) qui savent lire les fichiers. Un virtualenv reviendrait à avoir un compte sur chaque ordinateur que vous pouvez vous connecter à ce qui a des programmes identiques. N’importe quel moment que vous commencez à utiliser un nouveau programme sur un seul compte, vous voulez un moyen pour le même compte sur l’autre ordinateur à l’ai aussi, alors vous pouvez ouvrir tous vos fichiers. Virtualenv est-ce pour Python.

Le flux de travail pour l’environnement virtuel avec Heroku est :

-installation Virtualenv

-activer virtualenv

source venv/bin/activer

-installer de nouveaux modules à l’aide de pip ou easy_install (responsables de la pose pour Python)

-mise à jour requirements.txt par « geler » les dépendances Virtualenv dans le fichier (requirements.txt garde trace de quels modules sont installés dans le virtualenv)

gel pip > requirements.txt

Une explication alternative de Virtualenv pour ceux que j’ai confondu (désolé!).

Après que vous avez Heroku, Git, et Virtualenv le programme d’installation et vous avez écrit du code dans votre fichier app.py, que vous pouvez exécuter un serveur de test local avant de pousser le code d’Heroku, pour vérifier que cela fonctionne tout d’abord. Pour exécuter un serveur local, tandis que dans le virtualenv dans console exécuter :

contremaître de commencer

Cela se déroulera un serveur local à 0.0.0.0:5000 dans votre navigateur web. Allez-y, tester la fonctionnalité de votre serveur. Si Erreurs pop-up, le navigateur affichera les, et vous pouvez vérifier votre console pour les messages de débogage.

Une fois lancé votre heureux avec les fonctionnalités de votre serveur, dans la console :

Ajouter de nouveaux fichiers à la copie locale de la Git
git ajouter.

Enregistrer les modifications apportées à votre copie locale de la Git
git commit -m « Ajouter le message de validation qui décrit les modifications apportées depuis la dernière fois ».

Vous copier copie locale sur la copie d’Heroku ou référentiel
maître de git push heroku

Et à l’alto ! Votre code fonctionne maintenant sur Heroku et sont accessibles par Internet ! J’ai encore besoin de décrire comment enregistrer des événements de touche dans le serveur à l’aide d’une base de données, mais je vais faire cela plus tard. Maintenant à parler avec Facebook.

Articles Liés

Seau de Cage de Faraday

Seau de Cage de Faraday

Hey tout le monde. Juste pensé que je partagerais avec vous non seulement un ' ible, mais avec l'état de choses se passe dans le monde en ce moment, je voulais également quelques informations sur PGE, cages de Faraday et comment protéger vos appareil
Auteur de la notification de boîte aux lettres SMS sur le bon marché

Auteur de la notification de boîte aux lettres SMS sur le bon marché

Si vous magasinez en ligne, puis vous souvent vous retrouver pour une livraison en attente. Il faut vérifier la boîte aux lettres fréquemment ce qui est bien si vous avez votre boîte aux lettres en vue. Mais si vous vivez sur un étage élevé d'un imme
Nouvel éclairage de Notification Email

Nouvel éclairage de Notification Email

Dans ce Instructable, nous allons construire un fun gadget de bureau pour vous avertir lorsqu'un nouveau message arrive dans votre boîte de réception.Étape 1: matériauxMatériaux :Raspberry Pi (RadioShack #277-196)protoboard (RadioShack #276-168)résis
Jailli de plancher de danse bois

Jailli de plancher de danse bois

J'ai avez été impliqué dans des danses latino-américaines traditionnelle depuis plus de 30 ans et ont beaucoup aimé danser sur l'historique « sprung » planchers de bois qui ont réellement certains « give » quand la danse. J'ai eu récemment l'occasion
BoomBucket : le seau boombox !

BoomBucket : le seau boombox !

Si vous aimez boomboxes et vous aimez seaux, vous allez BoomBucket de l'amour ! En fait, il est assez difficile de ne pas aimez, sauf si vous êtes les voisins plaidoirie Enya jouer pendant une heure directement à partir de la rue en contrebas.Mais il
Bug social : bluetooth danse robot

Bug social : bluetooth danse robot

Bug social est bluetooth simple robot qui danse s'il y a une nouvelle notification sur votre téléphone. Facebook, Twitter et tout type d'applications Android permet de danser ce bug.Pour faire ce petit bug vous n'avez pas besoin beaucoup de pièces. M
Touche alerte de Notification Fob

Touche alerte de Notification Fob

IntroductionAvez vous jamais inquiète un ami âgé ou handicapé ou un parent ? Que se passe-t-il si ils ont besoin d'aide et ne peut pas atteindre un téléphone ou crier à l'aide. Si ils avaient une distance autour de leur cou et pourraient pousser le b
ESP8266 & IFTTT Autobot Notification System

ESP8266 & IFTTT Autobot Notification System

Un jour je me promenais autour de la ville et je suis tombé sur cette brillante à la recherche, a conduit le logo Autobot rétro-éclairé. J'ai pensé instantanément « I want to hack cela » et finalement j'ai décidé que je voulais qu'il soit un système
Notificateur de panne d’alimentation

Notificateur de panne d’alimentation

Le notifiant de délestage de charge est un projet simple qui vous avertit lorsqu'il y a une panne/coupure de courant ainsi que lorsque le courant est rétabli. Il envoie la notification par SMS à un numéro de téléphone spécifié.Mon pays connaît actuel
Épée de danse de feu

Épée de danse de feu

c'est le processus que j'ai utilisé pour construire mon épée de feu de ruer, qui a une autonomie moyenne de 3 ou 4 minutes (selon la rapidité j'ai tourner).Sécurité/DISCLAIMERFilature de l'incendie est dangereux, sérieusement. Voici quelques lignes d
Danse RedBot

Danse RedBot

Problème :Aucune Redbot avec traitement du son à l'aide d'un téléphone portable android.Aucun Redbot qui utilise un BPN (Intelligence artificielle) pour savoir quand se déplacer selon le seuil de son.Etape 1: Acheter un RedbotVous avez besoin obtenir
Réseau de caméras de sécurité Android

Réseau de caméras de sécurité Android

Mon deuxième instructable ! C'est ma prochaine étape logique dans ma voie à la création d'un réseau de sécurité flexible et rentable pour mon domicile/bureau. Si vous voulez voir comment j'ai commencé ce - s'il vous plaît. J'ai recouvrira pas comment
Noteu : Dispositif de Notification physique USB

Noteu : Dispositif de Notification physique USB

Ce qui est Noteu ?S'il vous plaît cliquez ci-dessous pour visiter notre page Kickstarter pour Noteu et si son intérêt pour vous Précommandez un modèle de production.https://www.Kickstarter.com/projects/1600235162/no...Noteu est un périphérique USB co
Une configuration portable et minimale pour les notifications de PROWL avec autonome ESP8266

Une configuration portable et minimale pour les notifications de PROWL avec autonome ESP8266

Quand j'ai commencé à jouer avec le module wifi/uart de ESP8266 j'ai vite compris qu'il s'agit d'un très puissant petit peu et le module très bon marché pour toutes sortes de projets. Avec le soutien de la grande communauté, il est maintenant possibl