APP管理后台OSS技术改造

本文涉及的产品
对象存储 OSS,20GB 3个月
对象存储 OSS,恶意文件检测 1000次 1年
对象存储 OSS,内容安全 1000次 1年
简介: 旨在记录之前使用的上传文件是放在服务器的现在改成了oss更加高效管理

一、背景

  • 背景:App管理后台因现在Apk文件是存储在服务器上,为了更加安全的管理和维护需进行技术改造
  • 技术应用场景:实现文件更加安全管理和维护
  • 整体思路:上传改成OSS,下载使用自有域名下载
    二、大致步骤
  1. 改造上传方式使用oss上传
  2. 获取上传路径地址替换成绑定的资源域名地址
  3. OSS管理后台绑定资源域名地址
  4. 资源域名地址使用免费SSL证书并部署OSS
  5. 测试连调https资源域名和OSS是否打通
  6. 修改代码逻辑实现OSS下载

三、具体实施
3.1 OSS上传逻辑
String dir = ossConfig.getTiaoyuePdfDir();

if (StringUtils.isEmpty(dir)){
throw new BizException(ErrorEnum.ERROR_UPLOAD_TYPE.code(), ErrorEnum.ERROR_UPLOAD_TYPE.message());
}
UploadResDTO uploadResDTO = ossUtil.upload(file, dir);
log.info("uploadSuccessPath is:{} ", uploadResDTO.getUrl());
return uploadResDTO;
3.2 测试使用OSS返回路径
报错如图,需要绑定自有域名
一、背景

  • 背景:App管理后台因现在Apk文件是存储在服务器上,为了更加安全的管理和维护需进行技术改造
  • 技术应用场景:实现文件更加安全管理和维护
  • 整体思路:上传改成OSS,下载使用自有域名下载
    二、大致步骤
  1. 改造上传方式使用oss上传
  2. 获取上传路径地址替换成绑定的资源域名地址
  3. OSS管理后台绑定资源域名地址
  4. 资源域名地址使用免费SSL证书并部署OSS
  5. 测试连调https资源域名和OSS是否打通
  6. 修改代码逻辑实现OSS下载

三、具体实施
3.1 OSS上传逻辑
String dir = ossConfig.getTiaoyuePdfDir();

if (StringUtils.isEmpty(dir)){
throw new BizException(ErrorEnum.ERROR_UPLOAD_TYPE.code(), ErrorEnum.ERROR_UPLOAD_TYPE.message());
}
UploadResDTO uploadResDTO = ossUtil.upload(file, dir);
log.info("uploadSuccessPath is:{} ", uploadResDTO.getUrl());
return uploadResDTO;
3.2 测试使用OSS返回路径
报错如图,需要绑定自有域名
image.png

3.3 Bucket绑定指定域名(图为测试域名)
image.png

3.4 连调使用资源域名作为下载前缀
报不是安全连接,将资源使用SSL安全证书,以https开头
image.png

3.5 资源域名使用https
为资源域名申请SSL证书并部署至OSS中。(原来免费期一年现缩短至3个月,需3个月换一次)
image.png

image.png

3.6 再次尝试使用https开头,资源网址作为域名访问APK文件
成功下载!(注意:增加SSL证书会有缓存期,时间大致一个小时左右,为此还咨询了客服)

3.7 代码改造
上传时返回的路径在展示给前端需要进行域名替换及其他修改。
三、总结
技术改造需要提前做好充分的调研和测试,只有情况都通过了便可以进入下一步开发阶段。

相关实践学习
借助OSS搭建在线教育视频课程分享网站
本教程介绍如何基于云服务器ECS和对象存储OSS,搭建一个在线教育视频课程分享网站。
相关文章
|
5天前
|
移动开发 Android开发 数据安全/隐私保护
移动应用与系统的技术演进:从开发到操作系统的全景解析随着智能手机和平板电脑的普及,移动应用(App)已成为人们日常生活中不可或缺的一部分。无论是社交、娱乐、购物还是办公,移动应用都扮演着重要的角色。而支撑这些应用运行的,正是功能强大且复杂的移动操作系统。本文将深入探讨移动应用的开发过程及其背后的操作系统机制,揭示这一领域的技术演进。
本文旨在提供关于移动应用与系统技术的全面概述,涵盖移动应用的开发生命周期、主要移动操作系统的特点以及它们之间的竞争关系。我们将探讨如何高效地开发移动应用,并分析iOS和Android两大主流操作系统的技术优势与局限。同时,本文还将讨论跨平台解决方案的兴起及其对移动开发领域的影响。通过这篇技术性文章,读者将获得对移动应用开发及操作系统深层理解的钥匙。
|
2月前
|
小程序 API PHP
零成本搭建个人 APP 和小程序后台
虽然网上也有很多人介绍这俩平台的玩法,但都是 2024 年以前的文章,有些平台最新的修改,和自己踩到的坑而别人没提到的细节,我还是想记录一下。
47 9
|
3月前
|
监控 Android开发 开发者
Android经典面试题之实战经验分享:如何简单实现App的前后台监听判断
本文介绍在Android中判断应用前后台状态的两种方法:`ActivityLifecycleCallbacks`和`ProcessLifecycleOwner`。前者提供精细控制,适用于需针对每个Activity处理的场景;后者简化前后台检测,适用于多数应用。两者各有优劣:`ActivityLifecycleCallbacks`更精确但复杂度高;`ProcessLifecycleOwner`更简便但可能在极端场景下略有差异。根据应用需求选择合适方法。
29 2
|
3月前
|
存储 安全 数据安全/隐私保护
移动APP安全加固技术深度解析
【7月更文挑战第12天】移动APP安全加固技术是保障移动应用安全的重要手段。通过对Android和iOS两大主流平台的安全加固,可以有效防止逆向分析、动态调试、数据篡改等安全威胁。在实际应用中,我们需要结合静态层面、动态层面和数据层面的加固技术,全方位地提升APP的安全性。同时,随着技术的不断发展,我们也需要不断关注新的安全威胁和加固技术,确保移动应用的安全性和稳定性。
|
3月前
|
JavaScript Java 测试技术
基于SpringBoot+Vue+uniapp的宠物饲养管理APP的详细设计和实现(源码+lw+部署文档+讲解等)
基于SpringBoot+Vue+uniapp的宠物饲养管理APP的详细设计和实现(源码+lw+部署文档+讲解等)
|
3月前
|
JavaScript Java 测试技术
基于springboot+vue.js+uniapp的宠物饲养管理APP附带文章源码部署视频讲解等
基于springboot+vue.js+uniapp的宠物饲养管理APP附带文章源码部署视频讲解等
28 1
|
3月前
|
机器学习/深度学习 人工智能 文字识别
文本,文字扫描01,OCR文本识别技术展示,一个安卓App,一个简单的设计,文字识别可以应用于人工智能,机器学习,车牌识别,身份证识别,银行卡识别,PaddleOCR+SpringBoot+Andr
文本,文字扫描01,OCR文本识别技术展示,一个安卓App,一个简单的设计,文字识别可以应用于人工智能,机器学习,车牌识别,身份证识别,银行卡识别,PaddleOCR+SpringBoot+Andr
|
3月前
|
小程序 API
跨端技术问题之哪些形态可以通过getApp()获取全局App实例
跨端技术问题之哪些形态可以通过getApp()获取全局App实例
|
9天前
|
XML 移动开发 前端开发
使用duxapp开发 React Native App 事半功倍
对于Taro的壳子,或者原生React Native,都会存在 `android` `ios`这两个文件夹,而在duxapp中,这些文件夹的内容是自动生成的,那么对于需要在这些文件夹中修改的配置内容,例如包名、版本号、新架构开关等,都通过配置文件的方式配置了,而不需要需修改具体的文件
|
9天前
|
存储 开发工具 Android开发
使用.NET MAUI开发第一个安卓APP
【9月更文挑战第24天】使用.NET MAUI开发首个安卓APP需完成以下步骤:首先,安装Visual Studio 2022并勾选“.NET Multi-platform App UI development”工作负载;接着,安装Android SDK。然后,创建新项目时选择“.NET Multi-platform App (MAUI)”模板,并仅针对Android平台进行配置。了解项目结构,包括`.csproj`配置文件、`Properties`配置文件夹、平台特定代码及共享代码等。

热门文章

最新文章

相关产品

  • 对象存储
  • 下一篇
    无影云桌面