update call Hooks && linter
Some checks are pending
lint / lint (pull_request) Blocked by required conditions
test / test (pull_request) Blocked by required conditions

This commit is contained in:
Денис Евстигнеев 2024-12-21 20:17:55 +03:00
parent 40aa552680
commit 581159db64
4 changed files with 5 additions and 48 deletions

View File

@ -172,7 +172,7 @@ func (h *Server) HTTPHandlerFunc(handler interface{}) (http.HandlerFunc, error)
hdlr := shdlr.(*httpHandler)
fh, mp, err := hdlr.handlers.Search(http.MethodPost, "/"+microMethod)
if err == nil {
match = true
// match = true
for k, v := range mp {
matches[k] = v
}
@ -278,7 +278,7 @@ func (h *Server) HTTPHandlerFunc(handler interface{}) (http.HandlerFunc, error)
}
// wrap the handler func
h.opts.Hooks.EachNext(func(hook options.Hook) {
h.opts.Hooks.EachPrev(func(hook options.Hook) {
if h, ok := hook.(server.HookHandler); ok {
fn = h(fn)
}
@ -646,7 +646,7 @@ func (h *Server) ServeHTTP(w http.ResponseWriter, r *http.Request) {
return err
}
h.opts.Hooks.EachNext(func(hook options.Hook) {
h.opts.Hooks.EachPrev(func(hook options.Hook) {
if h, ok := hook.(server.HookHandler); ok {
fn = h(fn)
}

View File

@ -1,8 +1,6 @@
package http
import (
"io"
"go.unistack.org/micro/v3/codec"
"go.unistack.org/micro/v3/metadata"
"go.unistack.org/micro/v3/server"
@ -14,7 +12,7 @@ var (
)
type rpcRequest struct {
rw io.ReadWriter
// rw io.ReadWriter
payload interface{}
codec codec.Codec
header metadata.Metadata

View File

@ -152,7 +152,7 @@ func (s *Server) createSubHandler(sb *httpSubscriber, opts server.Options) broke
return nil
}
opts.Hooks.EachNext(func(hook options.Hook) {
opts.Hooks.EachPrev(func(hook options.Hook) {
if h, ok := hook.(server.HookSubHandler); ok {
fn = h(fn)
}

View File

@ -3,9 +3,6 @@ package http
import (
"bytes"
"context"
"fmt"
"go.unistack.org/micro/v3/options"
"go.unistack.org/micro/v3/server"
"net/http"
"strings"
"testing"
@ -101,41 +98,3 @@ func TestFillrequest(t *testing.T) {
t.Fatalf("FillRequest error: %#+v", req)
}
}
func Test_Hook(t *testing.T) {
opts := server.Options{}
var fn server.HandlerFunc = func(fctx context.Context, req server.Request, rsp interface{}) (err error) {
fmt.Println("1")
return nil
}
var fn2 server.HandlerWrapper = func(server.HandlerFunc) server.HandlerFunc {
return func(ctx context.Context, req server.Request, rsp interface{}) error {
fmt.Println("2")
return nil
}
}
var fn3 server.HandlerWrapper = func(server.HandlerFunc) server.HandlerFunc {
return func(ctx context.Context, req server.Request, rsp interface{}) error {
fmt.Println("3")
return nil
}
}
var fn4 server.HandlerWrapper = func(server.HandlerFunc) server.HandlerFunc {
return func(ctx context.Context, req server.Request, rsp interface{}) error {
fmt.Println("4")
return nil
}
}
opts.Hooks = append(opts.Hooks, fn2, fn3, fn4)
opts.Hooks.EachNext(func(hook options.Hook) {
if h, ok := hook.(server.HandlerWrapper); ok {
fn = h(fn)
}
})
fn(nil, nil, nil)
}