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

阿里云OSS和腾讯云COS对象存储介绍和简单使用

对象存储指的是一种云存储服务,其主要是将数据以对象的形式存储在云端,并且提供了完全的API调用,这些API包括上传,下载,删除,复制,预览,权限设置等等。OSS对象存储和COS对象存储都是市场上常用的对象存储服务,下面对它们分别进行简单的介绍和提供基本上传的代码。

阿里云的OSS对象存储是基于阿里云平台提供的一种分布式对象存储服务,OSS的API调用简单明了,支持多种的客户端/SDK,极大的方便了开发人员对数据进行访问。使用阿里云的OSS对象存储,除了具备高效的访问性能、数据可靠性和强大的扩展性外,还可以通过授权访问、日志记录等功能实现高可靠高安全性的数据存储与管理。
在这里插入图片描述

腾讯云的COS对象存储也是一种可靠、耐用、安全的云对象存储服务。COS API接口简单易用,支持各种编程语言,支持 HTTP、HTTPS 协议访问,同时还提供CDN加速、断点续传、动态压缩、数据万兆上传下载并发等特性。

下面是上传授权认证的代码示例:

阿里云OSS上传代码示例(java):

import com.aliyun.oss.ClientException;
import com.aliyun.oss.OSSClient;
import com.aliyun.oss.OSSException;
import com.aliyun.oss.model.ObjectMetadata;
import com.aliyun.oss.model.PutObjectRequest;
import com.aliyun.oss.model.PutObjectResult;import java.io.ByteArrayInputStream;
import java.io.InputStream;
import java.nio.charset.StandardCharsets;public class AliyunOSSExample {private static String endpoint = "<yourEndpoint>";private static String accessKeyId = "<yourAccessKeyId>";private static String accessKeySecret = "<yourAccessKeySecret>";private static String bucketName = "<yourBucketName>";private static String key = "<yourObjectKey>";private static String content = "<yourObjectContent>";public static void main(String[] args) {OSSClient ossClient = new OSSClient(endpoint, accessKeyId, accessKeySecret);InputStream inputStream = new ByteArrayInputStream(content.getBytes(StandardCharsets.UTF_8));ObjectMetadata metadata = new ObjectMetadata();metadata.setContentLength(content.getBytes().length);PutObjectRequest putObjectRequest = new PutObjectRequest(bucketName, key, inputStream, metadata);PutObjectResult result = ossClient.putObject(putObjectRequest);ossClient.shutdown();        }
}

腾讯云COS上传代码示例(Python):

import sys
import logging
from qcloud_cos import CosConfig
from qcloud_cos import CosS3Clientlogging.basicConfig(level=logging.INFO, stream=sys.stdout)secret_id = '<yourSecretId>'      # 替换为用户的 secretId
secret_key = '<yourSecretKey>'    # 替换为用户的 secretKey
region = 'ap-guangzhou'           # 替换为用户的 Region
token = None                      # 使用临时密钥需要传入 Token,默认为空,可不填
scheme = 'https'                  # 指定使用 HTTP/HTTPS 协议来访问 COS,默认为 HTTPS,可不填
config = CosConfig(Region=region, SecretId=secret_id, SecretKey=secret_key, Token=token, Scheme=scheme)
# 2. 获取客户端对象
client = CosS3Client(config)# 列举全部bucket
response = client.list_buckets()
print(response['Buckets'])# 创建一个新的bucket
response = client.create_bucket(Bucket='<yourBucketName>'
)
print(response)# 上传一个对象
from io import BytesIObuffer = BytesIO()
buffer.write(b"<html><body><h1>Hello, COS!</h1></body></html>")
response = client.put_object(Bucket='<yourBucketName>',Body=buffer.getvalue(),Key='test.html',StorageClass='STANDARD',ContentType='text/html'
)
print(response)

相关文章:

  • 高并发场景下,如何设计订单库存架构,一共9个关键性问题
  • 了解防抖和节流:提升前端交互体验的实用策略
  • 【JAVA学习笔记】 68 - 网络——TCP编程、UDP编程
  • FFmpeg获取视频关键帧并保存成jpg图像
  • Centos, RockyLinux 常用软件安装汇总
  • 使用数据泵的注意事项
  • k8s自定义Endpoint实现内部pod访问外部应用
  • 307.区域和检索
  • Idea 编译SpringBoot项目Kotlin报错/Idea重新编译
  • YOLOv8-Seg改进:卷积变体系列篇 | DCNv3可形变卷积基于DCNv2优化 | CVPR2023
  • 2001-2022年全国平均气温数据,逐月数据均有
  • 鼎捷PLM:引领国产替代,创造极致体验,探索数字化研发可行之路
  • 【图论实战】 Boost学习 03:dijkstra_shortest_paths
  • 数据库MHA高可用
  • 浪潮服务器安装操作系统
  • SegmentFault for Android 3.0 发布
  • 【每日笔记】【Go学习笔记】2019-01-10 codis proxy处理流程
  • 【跃迁之路】【477天】刻意练习系列236(2018.05.28)
  • C++入门教程(10):for 语句
  • docker容器内的网络抓包
  • ES6之路之模块详解
  • IIS 10 PHP CGI 设置 PHP_INI_SCAN_DIR
  • java8 Stream Pipelines 浅析
  • Java知识点总结(JDBC-连接步骤及CRUD)
  • js操作时间(持续更新)
  • oldjun 检测网站的经验
  • React-生命周期杂记
  • thinkphp5.1 easywechat4 微信第三方开放平台
  • vue2.0一起在懵逼的海洋里越陷越深(四)
  • 从0到1:PostCSS 插件开发最佳实践
  • 大型网站性能监测、分析与优化常见问题QA
  • 电商搜索引擎的架构设计和性能优化
  • 利用阿里云 OSS 搭建私有 Docker 仓库
  • 罗辑思维在全链路压测方面的实践和工作笔记
  • 批量截取pdf文件
  • 前端学习笔记之原型——一张图说明`prototype`和`__proto__`的区别
  • 浅谈JavaScript的面向对象和它的封装、继承、多态
  • ​直流电和交流电有什么区别为什么这个时候又要变成直流电呢?交流转换到直流(整流器)直流变交流(逆变器)​
  • #Spring-boot高级
  • $.each()与$(selector).each()
  • %@ page import=%的用法
  • (4)事件处理——(7)简单事件(Simple events)
  • (delphi11最新学习资料) Object Pascal 学习笔记---第2章第五节(日期和时间)
  • (NO.00004)iOS实现打砖块游戏(十二):伸缩自如,我是如意金箍棒(上)!
  • (windows2012共享文件夹和防火墙设置
  • (八)Docker网络跨主机通讯vxlan和vlan
  • (笔试题)分解质因式
  • (非本人原创)史记·柴静列传(r4笔记第65天)
  • (附源码)springboot掌上博客系统 毕业设计063131
  • (力扣)循环队列的实现与详解(C语言)
  • (一)硬件制作--从零开始自制linux掌上电脑(F1C200S) <嵌入式项目>
  • .bat批处理(三):变量声明、设置、拼接、截取
  • .gitignore文件_Git:.gitignore
  • .NET Core 和 .NET Framework 中的 MEF2
  • .Net IOC框架入门之一 Unity