Ich bin versucht, eine Art von Funktion zu erstellen, die die Express (NodeJS) Route Methode in Go ähnlich ist: In diesem Beispiel mag ich „foo“Rückrufe und Funktionen als eine Art in go Mit
app.get("route/here/", func(req, res){
res.DoStuff()
});
(der Typ) ist identisch mit der anonymen Funktion in der obigen Methode. Hier ist eine meiner gescheiterten Versuche gehen mit:
type foo func(string, string)
func bar(route string, io foo) {
log.Printf("I am inside of bar")
// run io, maybe io() or io(param, param)?
}
func main() {
bar("Hello", func(arg1, arg2) {
return arg + arg2
})
}
Wie könnte ich mein Dilemma lösen? Sollte ich einen Typ nicht verwenden und etwas anderes verwenden? Was sind meine Möglichkeiten?
Randnotiz, aber wahrscheinlich in Verbindung stehend - In Bezug auf die kühlen Frameworks Go Web, das eine Middleware-Muster mit einer allgemeinen Syntax verwenden, die vertraut sind Express ist https://echo.labstack.com. – syllabix
@syllabix Ich versuche eine Kopie von Echo zu erstellen :) – adamSiwiec