Jelajahi Sumber

fix :Go server

zzf 1 tahun lalu
induk
melakukan
3cdabad689
6 mengubah file dengan 32 tambahan dan 24 penghapusan
  1. 16 15
      AIT/api/record.go
  2. 1 0
      AIT/go.mod
  3. 2 0
      AIT/go.sum
  4. 2 1
      AIT/initialize/router.go
  5. 9 6
      AIT/initialize/ws.go
  6. 2 2
      classify-ai-backend/main.py

+ 16 - 15
AIT/api/record.go

@@ -40,6 +40,7 @@ func (f *RecordService) SaveRecord(c *gin.Context) {
 	if err != nil {
 		fmt.Printf(errmsg.FileUploadError+"%s", err.Error())
 		response.Failed(errmsg.FileUploadError, c)
+		return
 	}
 	message := make(map[string]string)
 	userName := c.PostForm("userName")
@@ -54,7 +55,7 @@ func (f *RecordService) SaveRecord(c *gin.Context) {
 		response.Failed(errmsg.FileExtendNameError, c)
 		return
 	}
-	fmt.Printf("fileName====%s\n", fileName)
+	//fmt.Printf("fileName====%s\n", fileName)
 
 	fileName = common.GenerateUUID() + "." + fileExtendName
 	fileLocation := global.Config.Upload
@@ -80,12 +81,8 @@ func (f *RecordService) SaveRecord(c *gin.Context) {
 	record.FileType = fileType
 	record.Id = common.GenerateUUID()
 	record.FileUrl = fileURL
-	if count := f.CreateRecord(record); count <= 0 {
-		response.Failed(errmsg.RecordSaveError, c)
-	} else {
-		response.Success(errmsg.SaveSuccess, record.Id, c)
-	}
-	message["id"] = record.Id
+
+	message["recordId"] = record.Id
 	//invoke AI
 
 	ws, _, err := websocket.DefaultDialer.Dial(global.Config.Websocket.WSUrl, nil)
@@ -93,13 +90,13 @@ func (f *RecordService) SaveRecord(c *gin.Context) {
 		fmt.Println("Websocket client init error" + err.Error())
 		return
 	}
-	defer func(ws *websocket.Conn) {
-		err := ws.Close()
-		if err != nil {
-			fmt.Printf("socket关闭异常:%s", err.Error())
-			response.Failed(errmsg.SocketCloseError, c)
-		}
-	}(ws)
+	//defer func(ws *websocket.Conn) {
+	//	err := ws.Close()
+	//	if err != nil {
+	//		fmt.Printf("socket关闭异常:%s", err.Error())
+	//		response.Failed(errmsg.SocketCloseError, c)
+	//	}
+	//}(ws)
 	//发送消息
 	bytes, err := json.Marshal(message)
 	if err != nil {
@@ -114,7 +111,11 @@ func (f *RecordService) SaveRecord(c *gin.Context) {
 		return
 	}
 
-	return
+	if count := f.CreateRecord(record); count <= 0 {
+		response.Failed(errmsg.RecordSaveError, c)
+	} else {
+		response.Success(errmsg.SaveSuccess, record.Id, c)
+	}
 }
 
 // RecordList

+ 1 - 0
AIT/go.mod

@@ -3,6 +3,7 @@ module AIT
 go 1.18
 
 require (
+	github.com/codyguo/godaemon v0.0.0-20200413142854-c36b39fdd071
 	github.com/gin-gonic/gin v1.9.1
 	github.com/golang-jwt/jwt v3.2.2+incompatible
 	github.com/google/uuid v1.1.2

+ 2 - 0
AIT/go.sum

@@ -58,6 +58,8 @@ github.com/client9/misspell v0.3.4/go.mod h1:qj6jICC3Q7zFZvVWo7KLAzC3yx5G7kyvSDk
 github.com/cncf/udpa/go v0.0.0-20191209042840-269d4d468f6f/go.mod h1:M8M6+tZqaGXZJjfX53e64911xZQV5JYwmTeXPW+k8Sc=
 github.com/cncf/udpa/go v0.0.0-20200629203442-efcf912fb354/go.mod h1:WmhPx2Nbnhtbo57+VJT5O0JRkEi1Wbu0z5j0R8u5Hbk=
 github.com/cncf/udpa/go v0.0.0-20201120205902-5459f2c99403/go.mod h1:WmhPx2Nbnhtbo57+VJT5O0JRkEi1Wbu0z5j0R8u5Hbk=
+github.com/codyguo/godaemon v0.0.0-20200413142854-c36b39fdd071 h1:tbnIzvu8FEN9+zlJWxoNfPHeSYeAeAPSAQO7Q5ayQUE=
+github.com/codyguo/godaemon v0.0.0-20200413142854-c36b39fdd071/go.mod h1:RDz1idHRmqQc5EUSvX8/YJjOvGno6wqfCvt8ZOjDii8=
 github.com/creack/pty v1.1.9/go.mod h1:oKZEueFk5CKHvIhNR5MUki03XCEU+Q6VDXinZuGJ33E=
 github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
 github.com/davecgh/go-spew v1.1.1 h1:vj9j/u1bqnvCEfJOwUhtlOARqs3+rkHYY13jYWTU97c=

+ 2 - 1
AIT/initialize/router.go

@@ -13,6 +13,7 @@ import (
 )
 
 func Router() {
+	gin.SetMode(gin.ReleaseMode)
 	engine := gin.Default()
 	//解决跨域
 	engine.Use(middleware.Cors())
@@ -31,7 +32,7 @@ func Router() {
 	user := v1.Group("/user")
 	user.POST("/login", api.GetUser().UserLogin)
 
-	//user.Use(middleware.JwtAuth())
+	user.Use(middleware.JwtAuth())
 	user.POST("/register", api.GetUser().UseRegister)
 	user.POST("/reset", api.GetUser().ResetPassword)
 	user.POST("/find", api.GetUser().UserList)

+ 9 - 6
AIT/initialize/ws.go

@@ -57,13 +57,13 @@ func (manager *ClientManager) Start() {
 		case conn := <-Manager.Register:
 			log.Printf("新用户加入:%v", conn.ID)
 			Manager.Clients[conn.ID] = conn
-			jsonMessage, _ := json.Marshal(&Message{Content: "Successful connection to socket service"})
-			conn.Send <- jsonMessage
+			//jsonMessage, _ := json.Marshal(&Message{Content: "Successful connection to socket service"})
+			//conn.Send <- jsonMessage
 		case conn := <-Manager.Unregister:
-			log.Printf("用户离开:%v", conn.ID)
+			//log.Printf("用户离开:%v", conn.ID)
 			if _, ok := Manager.Clients[conn.ID]; ok {
-				jsonMessage, _ := json.Marshal(&Message{Content: "A socket has disconnected"})
-				conn.Send <- jsonMessage
+				//jsonMessage, _ := json.Marshal(&Message{Content: "A socket has disconnected"})
+				//conn.Send <- jsonMessage
 				close(conn.Send)
 				delete(Manager.Clients, conn.ID)
 			}
@@ -79,7 +79,10 @@ func (manager *ClientManager) Start() {
 				if MessageStruct.Recipient == "server" {
 					//更新record
 					recordService := GetRecord()
-					recordService.UpdateRecordById(MessageStruct.RecordId, MessageStruct.Content)
+					if MessageStruct.RecordId != "" {
+						recordService.UpdateRecordById(MessageStruct.RecordId, MessageStruct.Content)
+					}
+
 				} else {
 					if id == creatId(MessageStruct.Recipient, MessageStruct.Sender) {
 						continue

+ 2 - 2
classify-ai-backend/main.py

@@ -30,7 +30,7 @@ class MessageOperation:
             self.msg_type = ask['msg_type']
             self.msg_type = ask['msg_type']
             self.record_id = ask['recordId']
-            self.msg_content = ask['msg_content']
+            self.msg_content = ask['content']
             if self.msg_type == XLS_TYPE:
                 self.response_status = True
                 self.response_content = "response"
@@ -97,7 +97,7 @@ async def main():
         })
         logger.debug(f">>> {greeting}")
         await websocket.send(greeting)
-
+        await websocket.recv()
         while True:
             ask = await websocket.recv()
             logger.debug(f"<<< {ask}")