From 29120c5fa5f9022816dc04841b039208a05e5324 Mon Sep 17 00:00:00 2001
From: liuxiaolong <liuxiaolong@aiotlink.com>
Date: 星期五, 22 一月 2021 11:15:53 +0800
Subject: [PATCH] Request添加SrcProc返给上层
---
param.go | 2 ++
micronode.go | 31 ++++++++++++++++++-------------
hbusc.go | 3 ++-
3 files changed, 22 insertions(+), 14 deletions(-)
diff --git a/hbusc.go b/hbusc.go
index 5d50bef..8608efb 100644
--- a/hbusc.go
+++ b/hbusc.go
@@ -437,7 +437,6 @@
var ret []bhomebus.Mesg
n := h.sockWorker.sock.SendandrecvTimeout(rNodes, data,&ret, milliSecs)
- h.printLog("Request n: ", n, " len(ret): ", len(ret))
if n > 0 && len(ret) > 0 {
var resp Reply
@@ -447,6 +446,8 @@
h.printLog("unmarshal ret[0].Data err:", err)
return nil, err
}
+ } else {
+ h.printLog("Request n: ", n, " len(ret): ", len(ret))
}
return nil, fmt.Errorf("request err")
}
diff --git a/micronode.go b/micronode.go
index 03316b9..53dacf4 100644
--- a/micronode.go
+++ b/micronode.go
@@ -189,25 +189,30 @@
}
var reqBody Request
+ var ri *Reply
err := json.Unmarshal(msgR.Body, &reqBody)
if err != nil {
ms.printLog("serve unmarshal msgR.Body err:", err)
- return
- }
-
- ms.printLog("reqBody:", reqBody, "to key: ", p)
- var ri *Reply
- if f,ok := ms.handlers[reqBody.Path];ok {
- ri = f(&reqBody)
- ms.printLog("call funcMap f,reply:", *ri)
+ ri = &Reply {
+ Msg: err.Error(),
+ }
} else {
- ms.printLog("ms.funcMap not eixst path")
- ri = &Reply{
- Success: false,
- Msg: "璇锋眰鐨勬帴鍙d笉瀛樺湪锛岃妫�鏌rl",
- Data: "璇锋眰鐨勬帴鍙d笉瀛樺湪锛岃妫�鏌rl",
+ ms.printLog("reqBody:", reqBody, "to key: ", p)
+
+ if f,ok := ms.handlers[reqBody.Path];ok {
+ reqBody.SrcProc = msgR.SrcProc
+ ri = f(&reqBody)
+ ms.printLog("call funcMap f,reply:", *ri)
+ } else {
+ ms.printLog("ms.funcMap not eixst path")
+ ri = &Reply{
+ Success: false,
+ Msg: "璇锋眰鐨勬帴鍙d笉瀛樺湪锛岃妫�鏌rl",
+ Data: "璇锋眰鐨勬帴鍙d笉瀛樺湪锛岃妫�鏌rl",
+ }
}
}
+
retErr := ms.handle.Reply(p, ri)
if retErr != nil {
ms.printLog("retErr:", retErr)
diff --git a/param.go b/param.go
index 86501cd..8e7e2a2 100644
--- a/param.go
+++ b/param.go
@@ -16,6 +16,8 @@
Body []byte `json:"body"`
File FileArg `json:"file"`
MultiFiles []FileArg `json:"multiFiles""`
+
+ SrcProc ProcInfo `json:"srcProc"` //璇锋眰鏉ユ簮杩涚▼
}
type FileArg struct {
--
Gitblit v1.8.0