当前位置: 首页 > news >正文

网站开发需求分析范本旅游型网站建设

网站开发需求分析范本,旅游型网站建设,谁有恶意点击软件,dede视频网站模板读取连接中文件流和页面展示base64编码的文件 背景需求从接口处获取base64编码的字节流依赖java 代码 前端展示pdf图片 背景需求 我需要展示一个pdf 文件在页面上,但是我一直没办法将 pdf的下载链接用预览方式展示出来,于是打算讨个巧,直接给…

读取连接中文件流和页面展示base64编码的文件

  • 背景需求
    • 从接口处获取base64编码的字节流
      • 依赖
      • java 代码
    • 前端展示
      • pdf
      • 图片

背景需求

我需要展示一个pdf 文件在页面上,但是我一直没办法将 pdf的下载链接用预览方式展示出来,于是打算讨个巧,直接给前端页面发送 Base64 编码的字符串,用来展示pdf文件。而正好我们的文件也有一个获取流的接口。于是,变出现了这篇文章。

从接口处获取base64编码的字节流

依赖

        <dependency><groupId>org.apache.hadoop</groupId><artifactId>hadoop-common</artifactId><version>3.4.0</version></dependency>

java 代码

  1. 直接从 URL 获取流
    public static String downloadFile3(String UrlFilePath, String localFilePath) {URL url = null;HttpURLConnection httpUrl = null;try {url = new URL(UrlFilePath);httpUrl = (HttpURLConnection) url.openConnection();// 设置请求方式,默认是GET// httpUrl.setRequestMethod("POST");httpUrl.connect();try (BufferedInputStream bis = new BufferedInputStream(httpUrl.getInputStream())) {byte[] bytes = IOUtils.toByteArray(bis);String base64String = Base64.getEncoder().encodeToString(bytes);// Write the BASE64 encoded string to the filetry (BufferedWriter writer = new BufferedWriter(new FileWriter(localFilePath))) {writer.write(base64String);}return base64String;}} catch (Exception e) {e.printStackTrace();}return "";}
  1. 发送 GET 请求 获取流
/*** @param url 远程文件路径* @return base64 编码字符串*/public static String byGet(String url) {// 创建Httpclient对象CloseableHttpClient httpclient = HttpClientBuilder.create().build();RequestConfig requestConfig = RequestConfig.custom().setConnectTimeout(30000).setConnectionRequestTimeout(30000).setSocketTimeout(30000).build();String resultString = "";CloseableHttpResponse response = null;try {URIBuilder builder = new URIBuilder(url);URI uri = builder.build();// 创建http GET请求HttpGet httpGet = new HttpGet(uri);httpGet.setConfig(requestConfig);httpGet.addHeader("Content-type", "application/json; charset=utf-8");// 执行请求response = httpclient.execute(httpGet);// 判断返回状态是否为200if (response.getStatusLine().getStatusCode() == 200) {InputStream inputStream = response.getEntity().getContent();byte[] bytes = IOUtils.toByteArray(inputStream);BASE64Encoder encoder = new BASE64Encoder();resultString = encoder.encode(bytes);return resultString;}} catch (Exception e) {} finally {try {if (response != null) {response.close();}httpclient.close();} catch (IOException e) {e.printStackTrace();}}return "";}

前端展示

pdf

        function viewPdf (content) {const blob = this.base64ToBlob(content)if (window.navigator && window.navigator.msSaveOrOpenBlob) {window.navigator.msSaveOrOpenBlob(blob)} else {const fileURL = URL.createObjectURL(blob)window.open(fileURL)}}function base64ToBlob (code) {code = code.replace(/[\n\r]/g, '')const raw = window.atob(code)const rawLength = raw.lengthconst uInt8Array = new Uint8Array(rawLength)for (let i = 0; i < rawLength; ++i) {uInt8Array[i] = raw.charCodeAt(i)}return new Blob([uInt8Array], { type: 'application/pdf' })}

图片

let ImgURL ="\<img src=\"data:image/png;base64," + content + "\">";

将拼接好的 ImgURL 拼接即可

http://www.yayakq.cn/news/400714/

相关文章:

  • 长春哪家网络公司做网站专业网站背景全屏
  • 网站后台登录地址怎么安全网站制作交易流程
  • 江苏省城乡和住房建设厅网站广州建设工程交易中心聘用
  • 湖南长沙现在能去吗重庆seo外包行者seo06
  • 使用别人网站代码做自己的网站网站平台建设实训内容
  • 保定网站制作排名需要多少钱wordpress主题 收费
  • 个人网站建设程序设计网站制作交流论坛
  • 网站建设运营规划方案阳江网上问政平台
  • 网站后台样式模板百度网址域名大全
  • 淄博网站优化服务电子游艺网站开发
  • 中文网站建设公司怎么注册公司邮箱账号
  • 游戏官方网站开发设计报告域名查询大全
  • pc端网站手机版怎么做恩施网站开发
  • 如何判断网站是否被收录微信公众号涨粉 网站
  • 浙江建设厅继续教育网站首页在wordpress上背景怎么调
  • 深圳给企业做网站中建八局第二建设有限公司平台
  • 镇江牛吧企业网站建设与推广公司拖式网站建设
  • 帮做暑假作业网站seo优化方案模板
  • 北京网站建设怎么样天苏州网站优化建设
  • 建站网站系统淘宝网站建设没法上传怎么办
  • 建立门户网站南昌个人网站制作怎么做
  • 电子商务网站建设的开发背景贵州景点网站建设方案
  • 自己做网站赚钱案例嘉兴网站建设多少时间
  • 如何做淘宝的站外网站推广交互设计留学
  • 网站建设维护概括总结新乡哪里有做网站的
  • 手机网站智能建站大航母网站建设流程
  • 适合用dedecms做的网站品牌公关具体要做些什么
  • 在演示文稿上网站怎么做三网站合一
  • 做网站有必要吗品牌建设方式有哪些?
  • 怎么自己设计网站新网页游戏开服表