简单上传指的是使用OSS API中的PutObject方法上传单个文件(Object)。简单上传适用于一次HTTP请求交互即可完成上传的场景,例如小文件(小于5 GB)的上传。

说明 简单上传的API接口的详细信息请参见 PutObject

操作方式

操作方式 说明
控制台 Web应用程序,直观易用
图形化工具ossbrowser 图形化工具,易操作
命令行工具ossutil 命令行工具,性能好
Java SDK 丰富、完整的各类语言SDK demo
Python SDK
PHP SDK
Go SDK
C SDK
.NET SDK
Android SDK
iOS SDK
Node.js SDK
Browser.js SDK
Ruby SDK

注意事项

  • 文件大小限制

    简单上传的Object的大小不能超过5 GB。超过5 GB的Object上传请使用断点续传上传

  • 文件命名规则
    • 使用UTF-8编码。
    • 长度必须在1~1023字节之间。
    • 不能以正斜线(/)或者反斜线(\)字符开头。
  • 文件上传性能调优

    如果您在上传大量文件时,在命名上使用了顺序前缀(如时间戳或字母顺序),可能会出现大量文件索引集中存储于存储空间中某个特定分区的情况,此时如果您的请求速率过大,会导致请求速率下降。建议您在上传大量文件时,不要使用顺序前缀的文件名。将顺序前缀改为随机性前缀的方法请参见OSS性能与扩展性最佳实践

  • 防止同名文件被覆盖
    OSS的文件上传默认会覆盖同名文件, 为防止文件被意外覆盖,您可以通过以下方式保护您的文件:
    • 开启版本控制功能

      开启版本控制功能后,被覆盖的文件会以历史版本的形式保存下来。您可以随时恢复历史版本文件。详情请参见版本控制介绍

    • 在上传请求中携带禁止覆盖同名文件的参数

      在上传请求的header中携带参数x-oss-forbid-overwrite,并指定其值为true。当您上传的文件在OSS中存在同名文件时,该文件会上传失败,并返回FileAlreadyExists错误。当不携带此参数或此参数的值为false时,同名文件会被覆盖。详情请参见PutObject

上传文件时设置元信息(Object Meta)

在使用简单上传的情况下,可以携带Object Meta信息对Object进行描述,例如可以设定Content-Type等标准HTTP头,也可以设定自定义信息。详情请参见设置文件元信息

上传的安全及授权

为了防止第三方未经授权往您的Bucket里上传数据,OSS提供了Bucket和Object级别的访问权限控制。详情请参见访问控制

为了授权给第三方上传,OSS还提供了账号级别的授权。详情请参见授权给第三方上传

上传后续操作

  • 在文件上传到OSS后,您可以通过上传回调来向指定的应用服务器发起回调请求,进行下一步操作。
  • 如果上传的是图片,您还可以进行图片处理
  • 如果上传是音频或者视频文件,您还可以进行音视频转码

常见问题