Ich finde, dass die inkrementelle Entwicklung beim Codieren von Hunchentoot tendenziell abbricht.Zugreifen auf Hunchentoot-Request-Objekte von der REPL zum Debuggen
Zum Beispiel könnte ich eine Webseite schreiben, die aus ein paar Funktionen besteht. Wenn eine dieser inneren Funktionen einen Aufruf an - sagen wir - hunchentoot: post-parameters * enthält, kann ich die Funktion in der REPL nicht einfach testen. Es tritt ein Fehler auf, weil * Anfrage * nicht existiert, es sei denn, die Seite wird von einem Web-Client aufgerufen.
Es wäre schön, wenn einige funktions oder-andere-Quelle so bestand, dass ich so meine-Funktion testen konnte:
>(let* ((*request* (get-previous-request-from-somewhere))
(*session* (slot-value *request* 'hunchentoot:session)))
(my-function <whatever params>))
Tut es oder etwas ähnliches gibt es? Habe ich einen besseren Ansatz zum Debuggen übersehen?
Es scheint, dass Sie nur ein Gerät erstellen müssen, das eine Scheinanforderung zurückgibt. Das sollte nicht sehr schwer sein. Zum Beispiel siehe: https://github.com/russell/planet-git/blob/master/t/traverser.lisp#L55-L63 Fiveam hat Leuchten, wenn Sie so geneigt sind – PuercoPop