package v1 import ( "github.com/1Panel-dev/1Panel/backend/app/api/v1/helper" "github.com/1Panel-dev/1Panel/backend/app/dto/request" "github.com/1Panel-dev/1Panel/backend/constant" websocket2 "github.com/1Panel-dev/1Panel/backend/utils/websocket" "github.com/gin-gonic/gin" ) func (b *BaseApi) ProcessWs(c *gin.Context) { ws, err := wsUpgrade.Upgrade(c.Writer, c.Request, nil) if err != nil { return } wsClient := websocket2.NewWsClient("processClient", ws) go wsClient.Read() go wsClient.Write() } // @Tags Process // @Summary Stop Process // @Description 停止进程 // @Param request body request.ProcessReq true "request" // @Success 200 // @Security ApiKeyAuth // @Router /process/stop [post] // @x-panel-log {"bodyKeys":["PID"],"paramKeys":[],"BeforeFunctions":[],"formatZH":"结束进程 [PID]","formatEN":"结束进程 [PID]"} func (b *BaseApi) StopProcess(c *gin.Context) { var req request.ProcessReq if err := helper.CheckBindAndValidate(&req, c); err != nil { return } if err := processService.StopProcess(req); err != nil { helper.ErrorWithDetail(c, constant.CodeErrBadRequest, constant.ErrTypeInvalidParams, err) return } helper.SuccessWithOutData(c) }