@@ -529,7 +529,7 @@ func (d *CloudreveV4) upOneDrive(ctx context.Context, file model.FileStreamer, u
529529 }, nil )
530530}
531531
532- func (d * CloudreveV4 ) upS3 (ctx context.Context , file model.FileStreamer , u FileUploadResp , up driver.UpdateProgress ) error {
532+ func (d * CloudreveV4 ) upS3 (ctx context.Context , file model.FileStreamer , u FileUploadResp , up driver.UpdateProgress , s3Type string ) error {
533533 DEFAULT := int64 (u .ChunkSize )
534534 ss , err := stream .NewStreamSectionReader (file , int (DEFAULT ), & up )
535535 if err != nil {
@@ -560,6 +560,9 @@ func (d *CloudreveV4) upS3(ctx context.Context, file model.FileStreamer, u FileU
560560 }
561561 req .ContentLength = byteSize
562562 req .Header .Set ("User-Agent" , d .getUA ())
563+ if s3Type == "ks3" {
564+ req .Header .Set ("Content-Type" , "application/octet-stream" )
565+ }
563566 res , err := base .HttpClient .Do (req )
564567 if err != nil {
565568 return err
@@ -609,7 +612,11 @@ func (d *CloudreveV4) upS3(ctx context.Context, file model.FileStreamer, u FileU
609612 if err != nil {
610613 return err
611614 }
612- req .Header .Set ("Content-Type" , "application/xml" )
615+ if s3Type == "ks3" {
616+ req .Header .Set ("Content-Type" , "application/octet-stream" )
617+ } else {
618+ req .Header .Set ("Content-Type" , "application/xml" )
619+ }
613620 req .Header .Set ("User-Agent" , d .getUA ())
614621 res , err := base .HttpClient .Do (req )
615622 if err != nil {
@@ -622,7 +629,5 @@ func (d *CloudreveV4) upS3(ctx context.Context, file model.FileStreamer, u FileU
622629 }
623630
624631 // 上传成功发送回调请求
625- return d .request (http .MethodGet , "/callback/s3/" + u .SessionID + "/" + u .CallbackSecret , func (req * resty.Request ) {
626- req .SetBody ("{}" )
627- }, nil )
632+ return d .request (http .MethodGet , "/callback/" + s3Type + "/" + u .SessionID + "/" + u .CallbackSecret , nil , nil )
628633}
0 commit comments