|
- package cloud
-
- import (
- "gitlink.org.cn/JointCloud/pcm-coordinator/pkg/utils"
- "io"
- "net/http"
-
- "gitlink.org.cn/JointCloud/pcm-coordinator/internal/logic/cloud"
- "gitlink.org.cn/JointCloud/pcm-coordinator/pkg/repository/result"
- "k8s.io/apimachinery/pkg/util/json"
-
- "gitlink.org.cn/JointCloud/pcm-coordinator/internal/svc"
- container "gitlink.org.cn/JointCloud/pcm-coordinator/internal/types/cloud"
- )
-
- func ContainerCreateHandler(svcCtx *svc.ServiceContext) http.HandlerFunc {
- return func(w http.ResponseWriter, r *http.Request) {
- var req container.CreateParam
- body, err := io.ReadAll(r.Body)
- if err != nil {
- result.ParamErrorResult(r, w, err)
- return
- }
-
- if err = json.Unmarshal(body, &req); err != nil {
- result.ParamErrorResult(r, w, err)
- return
- }
- // 获取token信息
- token := r.Header.Get("Authorization")
- jccUserInfo, err := utils.ParseTokenWithoutVerify(token)
- if err != nil {
- result.ParamErrorResult(r, w, err)
- return
- }
- req.UserId = jccUserInfo.Id
- req.UserName = jccUserInfo.UserName
- l := cloud.NewContainerCreateLogic(r.Context(), svcCtx)
- resp, err := l.ContainerCreate(&req)
- result.HttpResult(r, w, resp, err)
- }
- }
|