阿里云对象存储OSS在完成文件上传时可以提供回调(Callback)给应用服务器。您只需要在发送给OSS的请求中携带相应的Callback参数,即可实现回调。
说明
- 有关Callback的API接口详细信息,请参见Callback。
- 支持CallBack的API接口包括PutObject、PostObject和CompleteMultipartUpload。
适用场景
上传回调的一种典型应用场景是结合授权第三方上传时使用。适当使用上传回调机制,能有效降低客户端的逻辑复杂度和网络消耗。上传回调流程如下:
- 客户端在上传文件到OSS时指定到服务器端的回调。
- 客户端的上传任务在OSS执行完毕后,OSS会向应用服务器主动发起HTTP请求进行回调。
- 应用服务器可以及时得到上传完成的通知,进而完成诸如数据库修改等操作,并向OSS返回回调结果。
- 在回调请求接收到服务器端的响应之后,OSS会将上传结果返回给客户端。
OSS在向应用服务器发送POST回调请求的时候,会在POST请求的Body中包含一些参数来携带特定的信息。这些参数有两种,一种是系统定义的参数,例如Bucket名称、Object名称等;另外一种是自定义的参数,您可以在发送带回调的请求给OSS时,通过使用自定义参数来携带一些和应用逻辑相关的信息,比如发起请求的用户ID等。有关使用自定义参数的方法,请参见Callback。
说明 目前只有简单上传(PutObject)、表单上传(PostObject)、分片上传完成(Complete Multipart Upload)操作支持上传回调功能。
操作方式
操作方式 | 说明 |
---|---|
Java SDK | 丰富、完整的各类语言SDK demo |
Python SDK | |
PHP SDK | |
Node.js SDK | |
C SDK | |
.NET SDK | |
C++ SDK |