wanghuidong 5 gadi atpakaļ
vecāks
revīzija
e499a0cd3c
1 mainītis faili ar 16 papildinājumiem un 9 dzēšanām
  1. 16 9
      rpc/rpc.go

+ 16 - 9
rpc/rpc.go

@@ -76,7 +76,7 @@ func (wxRPC *WeiXinRpc) SendTplMsg(msgTmpIdKey string, param *NotifyMsg, ret *Re
 	return
 }
 
-func (wxRPC *WeiXinRpc) CreateMenu(menu *weixin.Menu) {
+func (wxRPC *WeiXinRpc) CreateMenu(menu *weixin.Menu, ret *Result) (err error) {
 	/*url1 := "https://open.weixin.qq.com/connect/oauth2/authorize?appid=" + weixin.WxConfig.AppId + "&redirect_uri=http%3A%2F%2F" + weixin.WxConfig.Domain + "%2Fwx%2Fsso%3Fcallback%3Dhttp%3A%2F%2F" + weixin.WxConfig.Domain + "%2Fkjj%2Fbusiness1&response_type=code&scope=snsapi_base&state=1#wechat_redirect"
 	menu := &Menu{make([]MenuButton, 2)}
 	menu.Buttons[0].Name = "业务1"
@@ -88,27 +88,34 @@ func (wxRPC *WeiXinRpc) CreateMenu(menu *weixin.Menu) {
 	menu.Buttons[1].Type = MenuButtonTypeUrl
 	menu.Buttons[1].Url = url2*/
 
-	err := weixin.Mux.CreateMenu(menu)
+	err = weixin.Mux.CreateMenu(menu)
 	if err != nil {
+		*ret = "菜单创建失败"
 		log.Println("菜单创建失败")
 	} else {
+		*ret = "菜单创建成功"
 		log.Println("菜单创建成功!")
 	}
+	return
 }
 
 var listen net.Listener
 
 func StartWeiXinRpc(wx *weixin.Weixin) {
-	wrpc := &WeiXinRpc{wx: wx}
-	//在此可以注册多个Rpc服务接口
-	rpc.Register(wrpc)
-	rpc.HandleHTTP()
 	var err error
-	listen, err = net.Listen("tcp", ":"+weixin.WxConfig.RpcPort)
+	wRpc := &WeiXinRpc{wx: wx}
+	//在此可以注册多个Rpc服务接口
+	err = rpc.Register(wRpc)
 	if err != nil {
-		log.Println(err.Error())
+		log.Println("微信RPC服务注册失败:", err)
 	} else {
-		go http.Serve(listen, nil)
+		rpc.HandleHTTP()
+		listen, err = net.Listen("tcp", ":"+weixin.WxConfig.RpcPort)
+		if err != nil {
+			log.Println(err.Error())
+		} else {
+			go http.Serve(listen, nil)
+		}
 	}
 }