【无标题】MQ静态图片获取 你的名字 2024-05-05 07:53 3阅读 0赞 public void getImageV40(String path, Integer buildingProjectId, HttpServletResponse response){ JSONObject param = new JSONObject(); param.put("path", path); ApiParam apiParam = setApiParam(ApiConstant.API_GET_IMAGE_CHAONAO, param); RabbitMessage baseResult = getBaseResult(ROUTER_KEY_CN + buildingProjectId, apiParam, buildingProjectId); byte[] buffer = (byte[]) baseResult.getMessageData(); try { DataOutputStream dataOutputStream = new DataOutputStream(response.getOutputStream()); response.setContentType("image/*"); dataOutputStream.write(buffer,0,buffer.length); dataOutputStream.flush(); dataOutputStream.close(); } catch (Exception e) { e.printStackTrace(); } } 前置服务 switch (type) { case ApiConstant.API_GET_IMAGE_CHAONAO: String path = apiParam.getParam().get("path").toString(); String decode = URLDecoder.decode(path); try { //本地ip String ipAddr=InetAddress.getLocalHost().getHostAddress(); if(path.contains(ipAddr)){ HttpResponse response= Unirest.get(path).asString(); String length = response.getHeaders().get("Content-Length").get(0); byte[] buffer = new byte[Integer.parseInt(length)]; response.getRawBody().read(buffer); content = buffer; }else if(path.contains(portMachineUrl)) { content=HttpClientUtil.getImageV40(decode,portMachineUrl.replaceAll("http://","")); } else if(path.contains(portUrl)){ content=HttpClientUtil.getImageV40(decode,portUrl.replaceAll("http://","")); } } catch (Exception e) { content = "Error accessing " + api + e.getMessage(); } break; } public static Object getImageV40(String url, String host) throws IOException { Object content = null; CloseableHttpClient httpclient = digestAuth(host); try { HttpGet getMethod = new HttpGet(url); org.apache.http.HttpResponse response = httpclient.execute(getMethod); HttpEntity httpEntity = response.getEntity(); InputStream inputStream = httpEntity.getContent(); ByteArrayOutputStream baos = new ByteArrayOutputStream(); byte[] buffer = new byte[1024]; int len = -1; while ((len = inputStream.read(buffer)) != -1) { baos.write(buffer, 0, len); //把读取到的内容写到输出流中 } baos.flush(); baos.close(); content = baos.toByteArray(); } catch (Exception e) { log.debug("推送失败:" + e); } finally { httpclient.close(); } return content; }
相关 【无标题】 问题: 在开发spring cloud过程中一个很严重的资源问题就是内存占用过高,而实际上本机开发测试并没有很大的请求量,所以这是对电脑资源的一种严重的浪费,甚至导致IDE 怼烎@/ 2024年03月26日 21:22/ 0 赞/ 22 阅读
相关 【无标题】 C 语言接口如何定义和继承? 在 C 语言中,接口通常通过定义结构体来实现,结构体中包含一些函数指针,这些函数指针定义了接口所需的所有函数。 下面是一个示例代码: 谁践踏了优雅/ 2024年03月26日 11:40/ 0 赞/ 25 阅读
相关 【无标题】 ![95373c4d1ac54748809c8e2140ee9fda_tplv-tt-origin-asy1_5aS05p2hQOeoi-W6j-WRmOaciOS4iw_.i Love The Way You Lie/ 2023年10月15日 10:26/ 0 赞/ 47 阅读
相关 【无标题】 > 讲解5种常用的注册中心,对比其流程和原理,无论是面试还是技术选型,都非常有帮助。 对于注册中心,在写这篇文章前,我其实只对ETCD有比较深入的了解,但是对于Zo 今天药忘吃喽~/ 2023年09月28日 09:56/ 0 赞/ 57 阅读
相关 【无标题】 注意事项 int 宽度是显示宽度,如果超过,可以自动增大宽度 int底层都是4个字节 时间的方式多样 '1256-12-23' "1256/12/23" "1256.12. 朴灿烈づ我的快乐病毒、/ 2023年09月27日 14:57/ 0 赞/ 51 阅读
相关 【无标题】 【1】数据库基本概念 (1)数据 所谓数据(Data)是指对客观事物进行描述并可以鉴别的符号,这些符号是可识别的、抽象的。它不仅仅指狭义上的数字,而是有多种表现形式:字母、 拼搏现实的明天。/ 2023年09月27日 14:53/ 0 赞/ 59 阅读
相关 【无标题】 3.5.1 闭包的基本技能点 闭包的定义: 闭包就是一段代码块,用\{\}括起来: def c = { println 'hi groovy'} ![d5c9c 以你之姓@/ 2023年09月27日 14:51/ 0 赞/ 59 阅读
相关 【无标题】 课程简介 课程导读:基于Shiro框架实现基于Role Based Access Control的权限管理 本课程从Shiro的单独应用,到整合SpringMVC以及Spr ゝ一世哀愁。/ 2023年09月27日 14:45/ 0 赞/ 57 阅读
相关 【无标题】 昨晚和知识星球的一位同学 1对1 沟通,聊了很多关于团队管理、质量体系构建和个人职业发展的话题。 这位同学本身就具有多年的大厂背景,在技术实践、团队管理管理方面有丰富的经验。 待我称王封你为后i/ 2023年09月25日 19:00/ 0 赞/ 69 阅读
还没有评论,来说两句吧...