网站首页 网站源码
website
站点相关全部源代码,隐藏了一些关于服务器的信息
using Dpz.Core.Infrastructure.PublicStruct;
using Dpz.Core.Shard.Service;

namespace Dpz.Core.Service.ObjectStorage.Services;

public interface ISafeFileService
{
    /// <summary>
    /// 上传文件
    /// </summary>
    /// <param name="stream">文件流</param>
    /// <param name="path">文件夹路径</param>
    /// <param name="filename">文件名</param>
    /// <param name="cancellationToken"></param>
    /// <returns></returns>
    Task<UploadResult> UploadAsync(
        Stream stream,
        ICollection<string> path,
        string filename,
        CancellationToken cancellationToken = default
    );

    /// <summary>
    /// 断点续传
    /// </summary>
    /// <param name="file"></param>
    /// <param name="cancellationToken"></param>
    /// <returns></returns>
    Task<FileAddress?> UploadFileAsync(
        CloudFile file,
        CancellationToken cancellationToken = default
    );

    Task<Stream> DownloadAsync(string pathToFile, CancellationToken cancellationToken = default);

    Task<FileAddress?> UploadFileForFtpAsync(
        CloudFile file,
        CancellationToken cancellationToken = default
    );
}
loading