asis

Software screenshot:
asis
Dettagli del software:
Versione: 0.2.1
Data di caricamento: 20 Feb 15
Sviluppatore: Dan Lecocq
Licenza: Libero
Popolarità: 17

Rating: 4.0/5 (Total Votes: 1)

Asis è un programma Python leggero per servire così com'è documento (contenenti intestazioni e contenuto) su HTTP.
Quando si tratta di strumenti di test di unità che recuperano risorse HTTP, abbiamo deciso che ci piacerebbe avere un modo per memorizzare facilmente le risposte predeterminate, e poi servire da un server nello stesso processo, come stiamo correndo questi test. No patching scimmia, nessuna infrastruttura (come un server proxy caching).
Va ricordato che se stai cercando di catturare le richieste dei servizi esistenti e poi riprodurre, il progetto videoregistratore è stato portato su diverse lingue ed è molto utile.
Che cosa è?
Torto è dotato di una funzione chiamata così come sono al servizio, ispirato da Apache. Ma, che vuole: Twisted come una dipendenza?
Questo si basa sulla bottiglia, e quindi supporta un certo numero di backend WSGI (compresi intrecciata e gevent), ed è pensato per essere leggero. Un così com'è documento è quello in cui sono memorizzati sia le intestazioni e il contenuto di una risposta HTTP:
HTTP / 1.0 200 OK
Content-Length: 137
Content-Type: text / html

& Nbsp;
& Nbsp; Test Base pagina
& Nbsp;
& Nbsp;
& Nbsp;

Ciao, io sono una pagina di prova


& Nbsp;

Si noti che questo richiede solo a capo per le intestazioni - i ritorni a capo vengono aggiunti automaticamente per convenienza.
Installazione
Vai tranquillo:
sudo pip install asis
O per chi preferisce dalla fonte:
git clone https://github.com/seomoz/asis
cd asis && sudo python setup.py install
Utilizzo
È possibile eseguire un server Asis con relativa facilità:
import asis
# Servire i file memorizzati in 'foo / "sulla porta 8080
server = asis.Server ('foo', 8080)
server.run ()
...
server.stop ()
In alternativa, può essere utilizzato in modo context-manager:
import asis
le richieste di importazione
con asis.Server ('foo') come server:
& Nbsp; requests.get ('http: // localhost: 8080 / foo / bar.asis')
C'è anche una utility a riga di comando incluso per comodità per servire i file ASIS come server standalone, che è particolarmente utile per vedere i file attraverso ricciolo o il browser:
# Servire file di 'foo /' sulla porta 8080
foo asis server --port 8080
# Stesso, utilizzando gevent e di essere verboso
foo asis server --port 8080 --server gevent --verbose
campane e fischietti
Ci sono alcune caratteristiche che potrebbe essere necessario per usufruire di:
Content-Encoding
Se si fornisce l'intestazione Content-Encoding sia come gzip o sgonfiare, i contenuti pianura memorizzati nel file sono compressi e inviati sulla rete in quel modo. In questi casi, è possibile lasciare Content-Length come 0, e la vera lunghezza del contenuto (dopo la compressione) saranno rinviati al suo posto. Ad esempio, il seguente viene inviato come contenuto gzip correttamente al browser:
HTTP / 1.0 200 OK
Content-Length: 0
Content-Type: text / plain
Content-Encoding: gzip
Ciao mondo!
Charset
Se si include un charset nell'intestazione Content-Type, allora il vostro contenuto sarà interpretato come utf-8 su disco, e poi codificato con la codifica fornita. L'idea è quella di aiutare il processo di editing in modo che non c'è bisogno di salvare esplicitamente i vostri esempi nel loro set di caratteri dichiarato. Come modifiche al Content-Encoding, l'intestazione Content-Length è ricalcolato per essere corretto una volta che la trasformazione è completa.
Modalità
Per impostazione predefinita, il server viene avviato con il server gevent, ed è iniziato in uno sfondo filo verde, e si suppone che sia pronto a servire le richieste nel più breve tempo run rendimenti ().
In alternativa, il server può essere avviato in altri due modi, forchetta e blocco. Se forchetta, allora verrà eseguito il server in un processo separato, e funziona ancora come sia un manager contesto e dopo aver chiamato run (). Se viene selezionato blocco, allora viene eseguito in un modo di blocco. Ad esempio:
# Eseguire in un processo separato
con asis.Server ('foo', port = 8080, mode = 'fork'):
& Nbsp; # Fate alcune richieste
& Nbsp; ...
Esempi e test
Incluso in qui ci sono una serie di esempi di come sono i documenti, e test.py può essere eseguito direttamente per verificare che siano trasferiti correttamente:
./test.py
Esso fornisce anche un esempio di come si potrebbe integrare nelle vostre unit test.
Contribuire
. Le domande, commenti, idee accolgono sempre

Requisiti :

  • Python

Programmi simili

WvTftp
WvTftp

3 Jun 15

evilvte
evilvte

14 Apr 15

AxY FTP
AxY FTP

3 Jun 15

CrushFTP
CrushFTP

3 Jun 15

Altri software di sviluppo Dan Lecocq

reppy
reppy

11 May 15

aws-trade-in
aws-trade-in

20 Feb 15

Commenti a asis

I commenti non trovato
Aggiungi commento
Accendere le immagini!