asis

Logiciel capture d'écran:
asis
Détails logiciels:
Version: 0.2.1
Date de transfert: 20 Feb 15
Développeur: Dan Lecocq
Licence: Gratuit
Popularité: 17

Rating: 4.0/5 (Total Votes: 1)

asis est un utilitaire de Python léger pour servir tel quel le document (contenant têtes et le contenu) sur HTTP.
Quand il se agit d'outils de tests unitaires qui récupèrent des ressources HTTP, nous avons décidé que nous aimerions avoir un moyen de stocker facilement des réponses pré-déterminé, puis les servir à partir d'un serveur dans le même processus que nous exécution de ces tests. Pas de patch de singe, aucune infrastructure (comme un serveur proxy de mise en cache).
Il convient de mentionner que si vous cherchez à capturer des demandes de services existants et ensuite de rejouer eux, le projet de magnétoscope a été porté sur plusieurs langues et est très utile.
Qu'est-ce?
Twisted est livré avec une fonctionnalité appelée comme-est de servir, inspiré par Apache. Mais, qui veut également Twisted comme une dépendance?
Ceci est basé sur la bouteille, et donc prend en charge un certain nombre de backends WSGI (y compris Twisted et gevent), et est destiné à être léger. Un tel quel document est une dans laquelle les deux têtes et le contenu d'une réponse HTTP sont stockés:
HTTP / 1.0 200 OK
Content-Length: 137
Content-Type: text / html

& Nbsp;
& Nbsp; de base page de test
& Nbsp;
& Nbsp;
& Nbsp;

Bonjour, je suis une page de test


& Nbsp;

Notez que ce ne nécessite que des sauts de ligne pour les en-têtes - les retours chariot sont ajoutés automatiquement pour plus de commodité.
Installation
Facile comme bonjour:
sudo PIP installer asis
Ou pour ceux qui préfèrent de la source:
git clone https://github.com/seomoz/asis
cd && sudo asis python setup.py install
Utilisation
Vous pouvez exécuter un serveur de asis assez facilement:
asis d'importation
# Servir les fichiers stockés dans 'foo / »sur le port 8080
server = asis.Server ('foo', 8080)
server.run ()
...
server.stop ()
Alternativement, il peut être utilisé dans un mode contexte-manager:
asis d'importation
demandes d'importation
avec asis.Server ('foo') en tant que serveur:
& Nbsp; requests.get ('http: // localhost: 8080 / foo / bar.asis')
Il ya aussi un utilitaire de ligne de commande inclus pour la commodité pour servir des fichiers asis tant que serveur autonome, ce qui est particulièrement utile pour voir ces fichiers grâce à friser ou le navigateur:
# Servir fichiers sur 'foo /' sur le port 8080
foo asis-serveur --port 8080
# Idem, en utilisant gevent et verbeux
foo asis-serveur --port 8080 --server gevent --verbose
Les cloches et les sifflets
Il ya quelques fonctionnalités que vous pourriez avoir besoin pour profiter de:
Content-Encoding
Si vous fournissez l'en-tête Content-Encoding gzip ou soit comme dégonfler, le contenu plaine stockées dans le fichier sont compressés et envoyés sur le fil de cette façon. Dans ces cas, vous pouvez laisser Content-Length 0, et la vraie longueur de contenu (après compression) sera envoyé à sa place. Par exemple, le texte suivant est envoyé comme gzip contenu correctement pour le navigateur:
HTTP / 1.0 200 OK
Content-Length: 0
Content-Type: text / plain
Content-Encoding: gzip
Bonjour le monde!
Charset
Si vous incluez un jeu de caractères dans votre tête Content-Type, puis votre contenu sera interprété comme utf-8 sur le disque, puis encodée dans l'encodage fourni. L'idée est d'aider le processus de montage de sorte que vous ne avez pas à enregistrer vos exemples explicitement dans leur jeu de caractères déclarée. Comme les changements à Content-Encoding, l'en-tête Content-Length est recalculé pour être correcte une fois que la transformation est complète.
Modes
Par défaut, le serveur est lancé avec le serveur de gevent, et ça a commencé dans un fond fil vert, et il censé être prêt à servir les demandes dès que run () retourne.
Sinon, le serveur peut être démarré dans deux autres modes, fourchette et bloc. Si la fourche, puis elle se déroulera le serveur dans un processus séparé, et il fonctionne toujours à la fois comme un gestionnaire de contexte et après avoir appelé run (). Si le bloc est sélectionné, il fonctionne d'une manière de blocage. Par exemple:
# Lancez-le dans un processus séparé
avec asis.Server ('foo', port = 8080, mode = 'fourchette'):
& Nbsp; # Faire des demandes
& Nbsp; ...
Exemples et Tests
Inclus ici sont un certain nombre d'exemples de documents que-est, et test.py peut être exécuté directement pour vérifier qu'ils sont correctement transférés:
./test.py
Il fournit également un exemple de la façon dont vous pourriez incorporer dans vos tests unitaires.
Contribuer
. Questions, commentaires, idées sont toujours les bienvenues

Exigences :

  • Python

Logiciel similaire

Yakuake
Yakuake

17 Aug 18

icolor
icolor

20 Feb 15

ZenityShell
ZenityShell

20 Feb 15

D'autres logiciels de développeur Dan Lecocq

aws-trade-in
aws-trade-in

20 Feb 15

reppy
reppy

11 May 15

Commentaires à asis

Commentaires non trouvées
Ajouter un commentaire
Tourner sur les images!