Your Name
2023-04-26 7e2c3880ecca25e9a007806525f8ad5baf9aebb4
service-api/src/main/java/com/java110/api/controller/app/AppController.java
@@ -94,6 +94,8 @@
            IPageData pd = (IPageData) request.getAttribute(CommonConstant.CONTEXT_PAGE_DATA);
            privilegeSMOImpl.hasPrivilege(restTemplate, pd, "/app/" + service);
            responseEntity = apiSMOImpl.doApi(postInfo, headers,request);
            //todo 写入 token
            wirteToken(request,pd,service,responseEntity);
        } catch (Throwable e) {
            logger.error("请求post 方法[" + service + "]失败:" + postInfo, e);
            responseEntity = ResultVo.error("请求发生异常," + e.getMessage(),HttpStatus.INTERNAL_SERVER_ERROR);
@@ -101,6 +103,40 @@
        logger.debug("api:{} 返回信息为:{}", service, responseEntity);
        return responseEntity;
    }
    /**
     * 写入 token
     * @param request
     * @param pd
     * @param service
     * @param responseEntity
     */
    private void wirteToken(HttpServletRequest request, IPageData pd, String service, ResponseEntity<String> responseEntity) {
        String[] services = new String[]{
                "login.accessTokenLogin"
        };
        if(responseEntity.getStatusCode() != HttpStatus.OK){
            return;
        }
        boolean flag = false;
        for(String tmpService : services){
            if(tmpService.equals(service)){
                flag =true;
            }
        }
        if(!flag){
            return;
        }
        JSONObject paramOut = JSONObject.parseObject(responseEntity.getBody());
        if(!"0".equals(paramOut.getString("code"))){
            return;
        }
        String token = paramOut.getJSONObject("data").getString("token");
        pd.setToken(token);
    }
    /**
@@ -203,7 +239,7 @@
            IPageData pd = (IPageData) request.getAttribute(CommonConstant.CONTEXT_PAGE_DATA);
            privilegeSMOImpl.hasPrivilege(restTemplate, pd, "/app/" + resource + "/" + action);
            responseEntity = apiSMOImpl.doApi(postInfo, headers, request);
            //responseEntity = apiServiceSMOImpl.service(JSONObject.toJSONString(getParameterStringMap(request)), headers);
        } catch (Throwable e) {
            logger.error("请求post 方法[" + action + "]失败:" + postInfo, e);
            responseEntity = ResultVo.error("请求发生异常," + e.getMessage(),HttpStatus.INTERNAL_SERVER_ERROR);