Bitzsoft.Integrations.CloudDrive.Gokuai 1.0.0-alpha.10

This is a prerelease version of Bitzsoft.Integrations.CloudDrive.Gokuai.
dotnet add package Bitzsoft.Integrations.CloudDrive.Gokuai --version 1.0.0-alpha.10
                    
NuGet\Install-Package Bitzsoft.Integrations.CloudDrive.Gokuai -Version 1.0.0-alpha.10
                    
This command is intended to be used within the Package Manager Console in Visual Studio, as it uses the NuGet module's version of Install-Package.
<PackageReference Include="Bitzsoft.Integrations.CloudDrive.Gokuai" Version="1.0.0-alpha.10" />
                    
For projects that support PackageReference, copy this XML node into the project file to reference the package.
<PackageVersion Include="Bitzsoft.Integrations.CloudDrive.Gokuai" Version="1.0.0-alpha.10" />
                    
Directory.Packages.props
<PackageReference Include="Bitzsoft.Integrations.CloudDrive.Gokuai" />
                    
Project file
For projects that support Central Package Management (CPM), copy this XML node into the solution Directory.Packages.props file to version the package.
paket add Bitzsoft.Integrations.CloudDrive.Gokuai --version 1.0.0-alpha.10
                    
#r "nuget: Bitzsoft.Integrations.CloudDrive.Gokuai, 1.0.0-alpha.10"
                    
#r directive can be used in F# Interactive and Polyglot Notebooks. Copy this into the interactive tool or source code of the script to reference the package.
#:package Bitzsoft.Integrations.CloudDrive.Gokuai@1.0.0-alpha.10
                    
#:package directive can be used in C# file-based apps starting in .NET 10 preview 4. Copy this into a .cs file before any lines of code to reference the package.
#addin nuget:?package=Bitzsoft.Integrations.CloudDrive.Gokuai&version=1.0.0-alpha.10&prerelease
                    
Install as a Cake Addin
#tool nuget:?package=Bitzsoft.Integrations.CloudDrive.Gokuai&version=1.0.0-alpha.10&prerelease
                    
Install as a Cake Tool

Bitzsoft.Integrations.CloudDrive.Gokuai

够快云库企业网盘服务实现,基于够快云库开放平台 API。

功能特性

  • 基于够快云库开放平台 API,支持文件上传、下载、列表查询、搜索、移动、复制、删除
  • 免认证接入:无需身份认证,通过 org_client_id 参数标识企业组织
  • 文件夹管理:文件夹创建与删除
  • 关键词搜索:按关键词搜索文件
  • 共享链接管理:创建与删除共享链接
  • 统一异常:错误自动映射为 CloudDriveException

安装

.NET CLI

dotnet add package Bitzsoft.Integrations.CloudDrive.Gokuai

PackageReference

<PackageReference Include="Bitzsoft.Integrations.CloudDrive.Gokuai" Version="1.0.0" />

配置

appsettings.json

{
  "CloudDrive": {
    "Gokuai": {
      "OrgClientId": "你的企业组织客户端标识",
      "BaseUrl": "https://openapi.gokuai.com/1/",
      "HttpClientName": "GokuaiCloudDrive"
    }
  }
}
配置项 必填 默认值 说明
OrgClientId -- 够快云库企业组织客户端标识(管理后台获取)
BaseUrl https://openapi.gokuai.com/1/ 开放平台 API 基地址(私有化部署可修改)
HttpClientName GokuaiCloudDrive 命名 HttpClient 名称

注册服务

从 IConfiguration 绑定(推荐)

using Bitzsoft.Integrations.CloudDrive.Gokuai;

builder.Services.AddBitzsoftGokuaiCloudDrive(
    builder.Configuration.GetSection("CloudDrive:Gokuai"));

委托配置

builder.Services.AddBitzsoftGokuaiCloudDrive(options =>
{
    options.OrgClientId = "your_org_client_id";
    options.BaseUrl = "https://openapi.gokuai.com/1/";
});

使用示例

using Bitzsoft.Integrations.CloudDrive.Interfaces;
using Bitzsoft.Integrations.CloudDrive.Models;

public class MyService
{
    private readonly ICloudDriveProvider _drive;

    public MyService(ICloudDriveProvider drive) => _drive = drive;

    public async Task UploadAndListAsync()
    {
        // 上传文件
        await using var stream = File.OpenRead("report.pdf");
        var upload = await _drive.UploadAsync(new UploadFileRequest
        {
            FolderId = "parent_folder_id",
            FileName = "report.pdf",
            Content = stream,
            ContentType = "application/pdf"
        });

        // 列出文件夹内容
        var files = await _drive.ListFilesAsync("parent_folder_id");
        foreach (var file in files.Items)
        {
            Console.WriteLine($"{file.Name} ({file.Size} bytes)");
        }

        // 下载文件
        var download = await _drive.DownloadAsync(upload.FileInfo.Id);

        // 搜索文件
        var results = await _drive.SearchAsync(new SearchFilesRequest
        {
            Keyword = "report"
        });

        // 创建共享链接
        var link = await _drive.CreateShareLinkAsync(new CreateShareLinkRequest
        {
            FileId = upload.FileInfo.Id,
            AccessLevel = ShareLinkAccessLevel.View
        });
        Console.WriteLine($"共享链接: {link.Url}");
    }
}

核心类型一览

类型 说明
GokuaiCloudDriveProvider 够快云库实现(ProviderName = "Gokuai"
GokuaiOptions 配置选项(OrgClientId / BaseUrl / HttpClientName
ICloudDriveProvider 企业网盘服务统一抽象接口
UploadFileRequest / UploadFileResult 上传请求与结果
SearchFilesRequest 搜索请求(Keyword / FolderId / FileType / Extension)
CreateShareLinkRequest / DriveShareLink 共享链接请求与结果

实现状态

方法 状态 说明
UploadAsync 已实现 multipart/form-data 上传
DownloadAsync 已实现 流式下载
DeleteFileAsync 已实现 文件删除
MoveFileAsync 已实现 文件移动
CopyFileAsync 已实现 文件复制
GetFileInfoAsync 已实现 文件信息查询
ListFilesAsync 已实现 文件列表查询,offset/count 分页
CreateFolderAsync 已实现 文件夹创建
DeleteFolderAsync 已实现 文件夹删除(复用文件删除接口)
SearchAsync 已实现 按关键词搜索
CreateShareLinkAsync 已实现 创建共享链接
DeleteShareLinkAsync 已实现 删除共享链接
GetPermissionsAsync 不支持 API 不支持独立权限管理
SetPermissionAsync 不支持 API 不支持独立权限管理
DeletePermissionAsync 不支持 API 不支持独立权限管理
ListVersionsAsync 不支持 API 不支持版本管理
DownloadVersionAsync 不支持 API 不支持版本管理
RestoreVersionAsync 不支持 API 不支持版本管理

请求审计

内置 Bitzsoft.Integrations.RequestLogging 出站请求记录管道,默认 NullRequestLogStore 不持久化。

// ① 默认:启用记录管道但不持久化(日志丢弃)
services.AddBitzsoftGokuaiCloudDrive(options => { /* ... */ });

// ② 持久化:宿主注册 IRequestLogStore 实现后,所有出站请求自动落库
services.AddRequestLogging<MyRequestLogStore>(opts =>
{
    opts.MaxInMemoryBodyBytes = 64 * 1024; // 仅控制内存/加密临时文件切换,不截断正文
    opts.SensitiveFields.Add("mySecret"); // 额外脱敏字段
});
services.AddBitzsoftGokuaiCloudDrive(options => { /* ... */ });

依赖

说明
Bitzsoft.Integrations.CloudDrive 企业网盘抽象层
Bitzsoft.Integrations.RequestLogging 出站请求记录管道
Bitzsoft.Integrations.Compatibility 基础工具库
Microsoft.Extensions.Http IHttpClientFactory(连接池)
Microsoft.Extensions.Options.ConfigurationExtensions 配置节点绑定

相关包

Product Compatible and additional computed target framework versions.
.NET net5.0 is compatible.  net5.0-windows was computed.  net6.0 was computed.  net6.0-android was computed.  net6.0-ios was computed.  net6.0-maccatalyst was computed.  net6.0-macos was computed.  net6.0-tvos was computed.  net6.0-windows was computed.  net7.0 was computed.  net7.0-android was computed.  net7.0-ios was computed.  net7.0-maccatalyst was computed.  net7.0-macos was computed.  net7.0-tvos was computed.  net7.0-windows was computed.  net8.0 is compatible.  net8.0-android was computed.  net8.0-browser was computed.  net8.0-ios was computed.  net8.0-maccatalyst was computed.  net8.0-macos was computed.  net8.0-tvos was computed.  net8.0-windows was computed.  net9.0 was computed.  net9.0-android was computed.  net9.0-browser was computed.  net9.0-ios was computed.  net9.0-maccatalyst was computed.  net9.0-macos was computed.  net9.0-tvos was computed.  net9.0-windows was computed.  net10.0 is compatible.  net10.0-android was computed.  net10.0-browser was computed.  net10.0-ios was computed.  net10.0-maccatalyst was computed.  net10.0-macos was computed.  net10.0-tvos was computed.  net10.0-windows was computed. 
Compatible target framework(s)
Included target framework(s) (in package)
Learn more about Target Frameworks and .NET Standard.

NuGet packages (1)

Showing the top 1 NuGet packages that depend on Bitzsoft.Integrations.CloudDrive.Gokuai:

Package Downloads
Bitzsoft.Integrations.CloudDrive.All

企业网盘服务聚合包 — 包含所有供应商实现

GitHub repositories

This package is not used by any popular GitHub repositories.

Version Downloads Last Updated
1.0.0-alpha.10 43 7/26/2026
1.0.0-alpha.9 64 7/12/2026
1.0.0-alpha.8 61 7/1/2026
1.0.0-alpha.7 71 6/16/2026
1.0.0-alpha.6 63 6/16/2026
1.0.0-alpha.5 67 6/14/2026
1.0.0-alpha.4 53 7/1/2026
1.0.0-alpha.3 67 6/7/2026