pub struct OssCredential {
pub presigned_url: String,
pub object_key: Option<String>,
pub original_filename: Option<String>,
}Expand description
OSS STS 临时凭证 + 预签名上传 URL
由 OssService 生成并返回给前端,前端凭此直接上传文件到 COS。
§字段说明
| 字段 | 说明 |
|---|---|
presigned_url | COS 预签名上传 URL(含临时签名),前端 PUT 到此地址 |
object_key | COS 对象 Key,上传成功后前端回调时回传 |
original_filename | 原始文件名(服务端回显,前端可能修改) |
§安全性
- STS 临时密钥有效期由配置
tencent.duration_seconds控制 - 预签名 URL 通过
build_put_policy限制单对象写入权限 - 文件大小限制由策略
content-length条件控制
§对应 Java 类
Java OssCredential。
Fields§
§presigned_url: StringCOS 预签名上传 URL(含临时签名和 x-cos-security-token)
object_key: Option<String>COS 对象存储 Key(上传后回调时需回传)
original_filename: Option<String>原始文件名(服务端回显)
Trait Implementations§
Source§impl Clone for OssCredential
impl Clone for OssCredential
Source§fn clone(&self) -> OssCredential
fn clone(&self) -> OssCredential
Returns a duplicate of the value. Read more
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreSource§impl Debug for OssCredential
impl Debug for OssCredential
Source§impl<'de> Deserialize<'de> for OssCredential
impl<'de> Deserialize<'de> for OssCredential
Source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read more
Auto Trait Implementations§
impl Freeze for OssCredential
impl RefUnwindSafe for OssCredential
impl Send for OssCredential
impl Sync for OssCredential
impl Unpin for OssCredential
impl UnsafeUnpin for OssCredential
impl UnwindSafe for OssCredential
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
§impl<T> FutureExt for T
impl<T> FutureExt for T
§fn with_context(self, otel_cx: Context) -> WithContext<Self>
fn with_context(self, otel_cx: Context) -> WithContext<Self>
§fn with_current_context(self) -> WithContext<Self>
fn with_current_context(self) -> WithContext<Self>
§impl<T> Instrument for T
impl<T> Instrument for T
§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§impl<T> IntoRequest<T> for T
impl<T> IntoRequest<T> for T
Source§fn into_request(self) -> Request<T>
fn into_request(self) -> Request<T>
Wrap the input message
T in a tonic::Request