2000字范文,分享全网优秀范文,学习好帮手!
2000字范文 > 天翼云 Java对接OBS对象存储

天翼云 Java对接OBS对象存储

时间:2023-04-20 02:52:16

相关推荐

天翼云 Java对接OBS对象存储

天翼云 对接OBS对象存储

前言最近公司帮国企做一个项目,对方要求云厂商使用电信天翼云,我们之前一直都在使用阿里云,因为国企情况比较特殊,优先考虑国资背景的云厂商;最近才改造完rocketMQ,现在需要改造对象文件存储这快,从阿里云的OSS改成天翼云的OBS,没有对比就没有伤害,天翼云OBS的文档资料太少太少了,开发文档有是有,但文档里面没有demo实例,没有SDK,只有一些方式请求示例,可用性为0, 我人都傻了;没办法,问题还得解决,找了电信云方面对接人,通过沟通才拿到一份文档,结果一打开文档署名是华为云OBS开发文档…我还以为对方弄错了,通过确定才知道文档没发错,确实是华为云的OBS,有点离谱,我不知道是不是电信套了一层,底层还是华为云,这个就不纠结了,先解决问题;我写这篇博客的原因是,当时我找这方面的博客资料太少了,大多跟我的情况不一样,所以想着写一篇博客,给有需要的朋友,如果接入的不是电信对象存储OBS的朋友就不用接着往下看了,别浪费大伙宝贵的时间如图:

正文

一. 前置准备

AK, SK

自己创建一个桶

endPoint, 点击创建好的桶进去后,关于这个桶的所属终端节点信息,后续需要用上

二.Maven依赖

<!--华为云 对象存储OBS--><dependency><groupId>com.huaweicloud</groupId><artifactId>esdk-obs-java-bundle</artifactId><version>[3.21.8,)</version></dependency>

三. 我就简单列举两个例子, 还有我把华为云的开发文档链接放在下面了,也可以去看看官方的文档

// obs 配置类ObsConfiguration config = new ObsConfiguration();config.setSocketTimeout(30000);config.setConnectionTimeout(10000);config.setEndPoint(endPoint);// obs 客户端ObsClient obsClient = new ObsClient(ak, sk, config);/*** 示例: 上传文本对象* bucketName: 桶名称* objectKey: 对象key* content: 文件内容*/String content = "文本内容";obsClient.putObject(bucketName, objectKey, new ByteArrayInputStream(content.getBytes("UTF-8")), null);/*** 示例: 上传图片对象* bucketName: 桶名称* objectKey: 对象key* file: 图片*/File file = new File("文件路径")obsClient.putObject(bucketName, objectKey, file);TODO 这里我备注一下,如果你想要获取上传对象能在公网访问的链接,分为两种情况1.你桶的访问权限设置为公开的,这种情况就不需要通过api方式获取公网链接,直接用: bucketName.endPoint/objectKey (举例: rt-obs-/文件名) 这样就能访问你上传的文件了2.你桶的访问权限设置为私有,这种情况就需要通过api方式获取公网链接,示例在下面/*** 示例: 获取上传对象在公网中能访问的链接* * expirationTime: 链接有效时间 单位: 秒* bucketName: 桶名称* objectKey: 对象key* file: 图片*/try {TemporarySignatureRequest req = new TemporarySignatureRequest(HttpMethodEnum.GET, expirationTime);req.setBucketName(bucketName);req.setObjectKey(objectKey);TemporarySignatureResponse res = obsClient.createTemporarySignature(req);System.out.println("公网能访问的URL:" + res.getSignedUrl())} catch (Exception e) {log.error("下载图片失败", e);}

四.华为云的文档地址,大家可以去看看

华为云 对象存储OBS开发手册

最后,希望这篇博客对大家有用

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。