2012-10-08 24 views
5

Dzisiaj potrzebowałem prostego serwera HTTP, który rejestrował/wydrukował wszystko, co wie o żądaniu i odpowiadał jakąś obojętną odpowiedzią (do debugowania). Co zaskakujące, nie mogłem znaleźć żadnego narzędzia do czytania - czy czegoś brakuje?Czy istnieje gotowy serwer HTTP do debugowania?

Moduł SimpleHTTPServer w Pythonie wygląda obiecująco, może istnieje naprawdę szybki sposób, aby po prostu zrzucić całą prośbę, używając go?

Potrzebuję go, aby działał lokalnie.

+2

http://werkzeug.pocoo.org/ – reptilicus

Odpowiedz

7

Z niektórych szybkich wyszukiwań w Google wygląda na to, że najprostszym sposobem na to byłoby podsumowanie SimpleHttpServer i zarejestrowanie tego, co chcesz zobaczyć.

Ten looks być bardzo proste

class ServerHandler(SimpleHTTPServer.SimpleHTTPRequestHandler): 

    def do_GET(self): 
     logging.error(self.headers) 
     # whatever else you would like to log here 
     SimpleHTTPServer.SimpleHTTPRequestHandler.do_GET(self) 

Handler = ServerHandler 

httpd = SocketServer.TCPServer(("", PORT), Handler) 

print "serving at port", PORT 
httpd.serve_forever() 

Dodatkowo możesz mieć swój do_GET i do_POST zwrotu cokolwiek odpowiedź „manekin” chcesz.

+1

Czy istnieje ogólna metoda użycia dla wszystkich typów wniosków? –

+0

$/usr/bin/python3 -m http.server – AAAfarmclub

5
ruby -r sinatra -e "get('/') { puts params.inspect }" 

Dokumentacja: http://www.sinatrarb.com

Ruby jest prosty i elastyczny i pozwala na szybkie drwić żadnej odpowiedzi.

+0

- Odpowiedzi pytona z rubinem .-- Wat? –