| | |
| | | import com.alibaba.fastjson.JSONArray; |
| | | import com.alibaba.fastjson.JSONObject; |
| | | import com.java110.api.smo.IApiServiceSMO; |
| | | import com.java110.common.cache.AppRouteCache; |
| | | import com.java110.common.cache.MappingCache; |
| | | import com.java110.common.constant.CommonConstant; |
| | | import com.java110.common.constant.KafkaConstant; |
| | | import com.java110.common.constant.MappingConstant; |
| | | import com.java110.common.constant.ResponseConstant; |
| | | import com.java110.common.constant.ServiceCodeConstant; |
| | | import com.java110.common.exception.BusinessException; |
| | | import com.java110.common.exception.DecryptException; |
| | | import com.java110.common.exception.InitConfigDataException; |
| | | import com.java110.common.exception.ListenerExecuteException; |
| | | import com.java110.common.exception.NoAuthorityException; |
| | | import com.java110.common.exception.SMOException; |
| | | import com.java110.common.kafka.KafkaFactory; |
| | | import com.java110.common.log.LoggerEngine; |
| | | import com.java110.common.util.DateUtil; |
| | | import com.java110.common.util.StringUtil; |
| | | import com.java110.utils.cache.AppRouteCache; |
| | | import com.java110.utils.cache.MappingCache; |
| | | import com.java110.utils.constant.CommonConstant; |
| | | import com.java110.utils.constant.KafkaConstant; |
| | | import com.java110.utils.constant.MappingConstant; |
| | | import com.java110.utils.constant.ResponseConstant; |
| | | import com.java110.utils.constant.ServiceCodeConstant; |
| | | import com.java110.utils.exception.BusinessException; |
| | | import com.java110.utils.exception.DecryptException; |
| | | import com.java110.utils.exception.InitConfigDataException; |
| | | import com.java110.utils.exception.ListenerExecuteException; |
| | | import com.java110.utils.exception.NoAuthorityException; |
| | | import com.java110.utils.exception.SMOException; |
| | | import com.java110.utils.kafka.KafkaFactory; |
| | | import com.java110.utils.log.LoggerEngine; |
| | | import com.java110.utils.util.DateUtil; |
| | | import com.java110.utils.util.StringUtil; |
| | | import com.java110.core.client.RestTemplate; |
| | | import com.java110.core.context.ApiDataFlow; |
| | | import com.java110.core.context.DataFlow; |
| | |
| | | reqJson = decrypt(reqJson, headers); |
| | | } |
| | | |
| | | //1.0 创建数据流 |
| | | //1.0 创建数据流 appId serviceCode |
| | | dataFlow = DataFlowFactory.newInstance(ApiDataFlow.class).builder(reqJson, headers); |
| | | |
| | | //2.0 加载配置信息 |
| | |
| | | } catch (DecryptException e) { //解密异常 |
| | | responseEntity = new ResponseEntity<String>("解密异常:" + e.getMessage(), HttpStatus.NON_AUTHORITATIVE_INFORMATION); |
| | | } catch (BusinessException e) { |
| | | responseEntity = new ResponseEntity<String>("业务处理异常:" + e.getMessage(), HttpStatus.BAD_REQUEST); |
| | | responseEntity = new ResponseEntity<String>(e.getMessage(), HttpStatus.BAD_REQUEST); |
| | | } catch (NoAuthorityException e) { |
| | | responseEntity = new ResponseEntity<String>("鉴权失败:" + e.getMessage(), HttpStatus.UNAUTHORIZED); |
| | | } catch (InitConfigDataException e) { |
| | |
| | | if (!StringUtil.isNullOrNone(dataFlow.getAppRoutes().get(0).getSecurityCode())) { |
| | | String sign = AuthenticationFactory.apiDataFlowMd5(dataFlow); |
| | | if (!sign.equals(dataFlow.getReqSign().toLowerCase())) { |
| | | throw new NoAuthorityException(ResponseConstant.RESULT_CODE_NO_AUTHORITY_ERROR, "签名失败"); |
| | | throw new NoAuthorityException(ResponseConstant.RESULT_CODE_NO_AUTHORITY_ERROR, "签名失败"+sign); |
| | | } |
| | | } |
| | | |