最简单的middleware
package middleware
import (
"fmt"
"github.com/sirupsen/logrus"
"testing"
)
func Test1(t *testing.T) {
fn := middleware(sum)
snm, err := fn(1, 2)
if err != nil {
return
}
fmt.Print(snm)
}
func middleware(fn func(a int, b int) (int, error)) func(int, int) (int, error) {
return func(i int, i2 int) (int, error) {
logrus.Infof("log middleware %d, %d", i, i2)
return fn(i, i2)
}
}
func sum(a, b int) (int, error) {
return a + b, nil
}