From f3d97adc87f0682b9f53599815d7db67e7db754d Mon Sep 17 00:00:00 2001
From: liuxiaolong <liuxiaolong@aiotlink.com>
Date: 星期二, 26 一月 2021 11:23:13 +0800
Subject: [PATCH] regSock sendandrecv添加超时
---
micronode.go | 35 ++++++++++++++++++++++-------------
1 files changed, 22 insertions(+), 13 deletions(-)
diff --git a/micronode.go b/micronode.go
index 03316b9..04ad27f 100644
--- a/micronode.go
+++ b/micronode.go
@@ -134,6 +134,10 @@
return ms.handle.Request(serverId, msgR, milliSecs)
}
+func (ms *MicroNode) RequestOnly(rData []byte, nodes []bhomebus.NetNode) ([]byte, error) {
+ return ms.handle.RequestOnly(rData, nodes)
+}
+
//鑾峰彇鏈満涓煇涓�涓富棰樼殑 key 锛堢粨鏋滃彧鏈変竴涓厓绱狅級
func (ms *MicroNode) GetLocalNetNodeByTopic(topicName string) []bhomebus.NetNode {
netNodes, err := ms.handle.GetNetNodeByTopic(ms.serverId, ms.procInfo, topicName)
@@ -189,25 +193,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)
--
Gitblit v1.8.0