mirror of
https://github.com/cloudreve/Cloudreve.git
synced 2025-12-26 00:12:50 +00:00
feat(upload): etag check in client-side upload / support empty policy ID
This commit is contained in:
parent
67c6f937c9
commit
fec4dec3ac
2
assets
2
assets
|
|
@ -1 +1 @@
|
|||
Subproject commit 1b1f9f4c8e35d72ac60216af611c81355bd4f7ce
|
||||
Subproject commit 0b388cc50a6c8e67f645d1b7d569bd9e58ae2c30
|
||||
|
|
@ -30,6 +30,7 @@ type (
|
|||
Metadata map[string]string `json:"metadata" binding:"max=256"`
|
||||
EntityType string `json:"entity_type" binding:"eq=|eq=live_photo|eq=version"`
|
||||
EncryptionSupported []types.Cipher `json:"encryption_supported"`
|
||||
Previous string `form:"previous"`
|
||||
}
|
||||
)
|
||||
|
||||
|
|
@ -56,16 +57,20 @@ func (service *CreateUploadSessionService) Create(c context.Context) (*UploadSes
|
|||
}
|
||||
|
||||
hasher := dep.HashIDEncoder()
|
||||
policyId, err := hasher.Decode(service.PolicyID, hashid.PolicyID)
|
||||
policyId := 0
|
||||
if service.PolicyID != "" {
|
||||
policyId, err = hasher.Decode(service.PolicyID, hashid.PolicyID)
|
||||
if err != nil {
|
||||
return nil, serializer.NewError(serializer.CodeParamErr, "unknown policy id", err)
|
||||
}
|
||||
}
|
||||
|
||||
uploadRequest := &fs.UploadRequest{
|
||||
Props: &fs.UploadProps{
|
||||
Uri: uri,
|
||||
Size: service.Size,
|
||||
|
||||
PreviousVersion: service.Previous,
|
||||
MimeType: service.MimeType,
|
||||
Metadata: service.Metadata,
|
||||
EntityType: entityType,
|
||||
|
|
|
|||
Loading…
Reference in New Issue