最简单的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
}

results matching ""

    No results matching ""