pub struct UploadPolicy { /* private fields */ }
Expand description
上传策略
可以阅读 https://developer.qiniu.com/kodo/manual/1206/put-policy 了解七牛安全机制。
§根据指定的存储空间和对象名称,生成可以用来上传低频存储类型文件的上传策略
use qiniu_upload_token::{FileType, UploadPolicy};
use std::time::Duration;
let upload_policy = UploadPolicy::new_for_object("your-bucket", "your-key", Duration::from_secs(3600))
.file_type(FileType::InfrequentAccess)
.build();
Implementations§
Source§impl UploadPolicy
impl UploadPolicy
Sourcepub fn new_for_bucket(
bucket: impl Into<BucketName>,
upload_token_lifetime: Duration,
) -> UploadPolicyBuilder
pub fn new_for_bucket( bucket: impl Into<BucketName>, upload_token_lifetime: Duration, ) -> UploadPolicyBuilder
为指定的存储空间生成的上传策略
允许用户上传文件到指定的存储空间,不限制上传客户端指定对象名称。
上传策略根据给出的客户端配置指定上传凭证有效期
Sourcepub fn new_for_object(
bucket: impl Into<BucketName>,
object: impl Into<ObjectName>,
upload_token_lifetime: Duration,
) -> UploadPolicyBuilder
pub fn new_for_object( bucket: impl Into<BucketName>, object: impl Into<ObjectName>, upload_token_lifetime: Duration, ) -> UploadPolicyBuilder
为指定的存储空间和对象名称生成的上传策略
允许用户以指定的对象名称上传文件到指定的存储空间。 上传客户端不能指定与上传策略冲突的对象名称。
上传策略根据给出的客户端配置指定上传凭证有效期
Sourcepub fn new_for_objects_with_prefix(
bucket: impl Into<BucketName>,
prefix: impl AsRef<str>,
upload_token_lifetime: Duration,
) -> UploadPolicyBuilder
pub fn new_for_objects_with_prefix( bucket: impl Into<BucketName>, prefix: impl AsRef<str>, upload_token_lifetime: Duration, ) -> UploadPolicyBuilder
为指定的存储空间和对象名称前缀生成的上传策略
允许用户以指定的对象名称前缀上传文件到指定的存储空间。 上传客户端指定包含该前缀的对象名称。
上传策略根据给出的客户端配置指定上传凭证有效期
Sourcepub fn use_prefixal_object_key(&self) -> bool
pub fn use_prefixal_object_key(&self) -> bool
是否是对象名称前缀约束
Sourcepub fn is_insert_only(&self) -> bool
pub fn is_insert_only(&self) -> bool
是否仅允许新增对象,不允许覆盖对象
Sourcepub fn mime_detection_enabled(&self) -> bool
pub fn mime_detection_enabled(&self) -> bool
是否启用 MIME 类型自动检测
Sourcepub fn token_deadline(&self) -> Option<SystemTime>
pub fn token_deadline(&self) -> Option<SystemTime>
上传凭证过期时间
Sourcepub fn return_url(&self) -> Option<&str>
pub fn return_url(&self) -> Option<&str>
Web 端文件上传成功后,浏览器执行 303 跳转的 URL
Sourcepub fn return_body(&self) -> Option<&str>
pub fn return_body(&self) -> Option<&str>
上传成功后,自定义七牛云最终返回给上传端的数据
Sourcepub fn callback_urls(&self) -> Option<Split<'_, char>>
pub fn callback_urls(&self) -> Option<Split<'_, char>>
上传成功后,七牛云向业务服务器发送 POST 请求的 URL 列表
Sourcepub fn callback_host(&self) -> Option<&str>
pub fn callback_host(&self) -> Option<&str>
上传成功后,七牛云向业务服务器发送回调请求时的 Host
Sourcepub fn callback_body_type(&self) -> Option<&str>
pub fn callback_body_type(&self) -> Option<&str>
上传成功后,七牛云向业务服务器发送回调请求时的 Content-Type
默认为 application/x-www-form-urlencoded
,也可设置为 application/json
Sourcepub fn is_save_key_forced(&self) -> bool
pub fn is_save_key_forced(&self) -> bool
是否忽略客户端指定的对象名称,强制使用自定义对象名称进行文件命名
Sourcepub fn file_size_limitation(&self) -> (Option<u64>, Option<u64>)
pub fn file_size_limitation(&self) -> (Option<u64>, Option<u64>)
限定上传文件尺寸的范围
返回的第一个元素为最小尺寸,第二个元素为最大尺寸,如果为 None
表示不限制,单位为字节
Sourcepub fn mime_types(&self) -> Option<Split<'_, char>>
pub fn mime_types(&self) -> Option<Split<'_, char>>
限定用户上传的文件类型
指定本字段值,七牛服务器会侦测文件内容以判断 MIME 类型,再用判断值跟指定值进行匹配, 匹配成功则允许上传,匹配失败则返回 403 状态码
Sourcepub fn object_lifetime(&self) -> Option<Duration>
pub fn object_lifetime(&self) -> Option<Duration>
对象生命周期
精确到天
Sourcepub fn get(&self, key: impl JsonValueIndex) -> Option<&JsonValue>
pub fn get(&self, key: impl JsonValueIndex) -> Option<&JsonValue>
根据指定的上传策略字段获取相应的值
Sourcepub fn keys(&self) -> JsonMapKeys<'_>
pub fn keys(&self) -> JsonMapKeys<'_>
获取上传策略的字段迭代器
Sourcepub fn values(&self) -> JsonMapValues<'_>
pub fn values(&self) -> JsonMapValues<'_>
获取上传策略的字段值的迭代器
Sourcepub fn into_dynamic_upload_token_provider<T: CredentialProvider + Clone>(
self,
credential: T,
) -> FromUploadPolicy<T>
pub fn into_dynamic_upload_token_provider<T: CredentialProvider + Clone>( self, credential: T, ) -> FromUploadPolicy<T>
将上传策略转换为动态上传凭证提供者的实例
该方法与 UploadPolicy::into_static_upload_token_provider
的区别在于该方法接受 CredentialProvider
实例
Sourcepub fn into_static_upload_token_provider(
self,
credential: Credential,
opts: ToStringOptions,
) -> StaticUploadTokenProvider
pub fn into_static_upload_token_provider( self, credential: Credential, opts: ToStringOptions, ) -> StaticUploadTokenProvider
将上传策略转换为静态上传凭证提供者的实例
该方法与 UploadPolicy::into_dynamic_upload_token_provider
的区别在于该方法只能接受 Credential
实例
Trait Implementations§
Source§impl Clone for UploadPolicy
impl Clone for UploadPolicy
Source§fn clone(&self) -> UploadPolicy
fn clone(&self) -> UploadPolicy
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source
. Read more