Creare un mock JSON server in Python

Mattepuffo's logo
Creare un mock JSON server in Python

Creare un mock JSON server in Python

In pratica devo testare una api che ancora non è pronta.

Quindi mi sono dovuto creare una mock API in modo da farmi restituire quei dati.

In Python è abbastanza semplice, in quanto possiamo usare HTTPServer, che è integrato.

Ovviamente va bene per i test, non in produzione.

Ecco il codice:

from http.server import BaseHTTPRequestHandler, HTTPServer
import json

HOST = "localhost"
PORT = 9999

class FakeAPIHandler(BaseHTTPRequestHandler):

    def do_GET(self):
        if self.path == "/api/info":
            self.send_response(200)
            self.send_header("Content-Type", "application/json")
            self.end_headers()

            response = {
                "install_id": "c1b7d9c4-6b3a-4c1f-8f59-3b8e0c2e4f2d",
                "app_version": "1.0.0"
            }

            self.wfile.write(json.dumps(response).encode("utf-8"))
        else:
            self.send_response(404)
            self.end_headers()

if __name__ == "__main__":
    server = HTTPServer((HOST, PORT), FakeAPIHandler)
    print(f"Fake API in esecuzione su http://{HOST}:{PORT}")
    server.serve_forever()

Tenete a mente che la funzione si deve chiamare do_GET; anche se la mettete in minuscolo vi darà errore.

Enjoy!


Condividi

Commentami!