wp
parent
d319e24c8b
commit
962ab2b152
@ -0,0 +1,44 @@
|
||||
package filter
|
||||
|
||||
import (
|
||||
"context"
|
||||
appconfig "github.com/exhibition-main/internal/config"
|
||||
"reflect"
|
||||
)
|
||||
|
||||
import (
|
||||
"dubbo.apache.org/dubbo-go/v3/common/extension"
|
||||
"dubbo.apache.org/dubbo-go/v3/filter"
|
||||
"dubbo.apache.org/dubbo-go/v3/protocol"
|
||||
)
|
||||
|
||||
func init() {
|
||||
extension.SetFilter("fonDomainFilter", NewDomainFonFilter)
|
||||
}
|
||||
|
||||
func NewDomainFonFilter() filter.Filter {
|
||||
return &DomainFonFilter{}
|
||||
}
|
||||
|
||||
type DomainFonFilter struct {
|
||||
}
|
||||
|
||||
func (f *DomainFonFilter) Invoke(ctx context.Context, invoker protocol.Invoker, invocation protocol.Invocation) protocol.Result {
|
||||
if len(invocation.Arguments()) > 0 {
|
||||
req := invocation.Arguments()[0]
|
||||
pp := reflect.ValueOf(req)
|
||||
field := pp.Elem().FieldByName("Domain")
|
||||
|
||||
if field.IsValid() {
|
||||
if field.IsZero() {
|
||||
field.SetString(appconfig.Data.System.Domain)
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
return invoker.Invoke(ctx, invocation)
|
||||
}
|
||||
|
||||
func (f *DomainFonFilter) OnResponse(ctx context.Context, result protocol.Result, invoker protocol.Invoker, protocol protocol.Invocation) protocol.Result {
|
||||
return result
|
||||
}
|
Loading…
Reference in New Issue