diff --git a/aspnet-core/framework/cli/LINGYUN.Abp.Cli/README.md b/aspnet-core/framework/cli/LINGYUN.Abp.Cli/README.md index 91d948a8f..e4268b17e 100644 --- a/aspnet-core/framework/cli/LINGYUN.Abp.Cli/README.md +++ b/aspnet-core/framework/cli/LINGYUN.Abp.Cli/README.md @@ -27,8 +27,24 @@ To get a detailed help for a command: labp help ``` +## Features + +* Support for generating TypeScript client proxy code + - Axios HTTP client + - Vben Admin integration + - UniApp integration +* Support for generating Flutter client proxy code + - Dio HTTP client + - REST service integration +* Support for generating view code + - Vben Admin view templates + - Flutter GetX view templates +* Custom ABP startup templates + ## Feedback Have a question and need feedback? -- [Github issuses](https://github.com/colinin/abp-next-admin/issuses) \ No newline at end of file +- [Github issues](https://github.com/colinin/abp-next-admin/issues) + +[简体中文](./README.zh-Hans.md) \ No newline at end of file diff --git a/aspnet-core/framework/cli/LINGYUN.Abp.Cli/README.zh-Hans.md b/aspnet-core/framework/cli/LINGYUN.Abp.Cli/README.zh-Hans.md new file mode 100644 index 000000000..61b716992 --- /dev/null +++ b/aspnet-core/framework/cli/LINGYUN.Abp.Cli/README.zh-Hans.md @@ -0,0 +1,50 @@ +# 基于ABP CLI的扩展工具集 + +提供快速创建模板项目、生成JavaScript库命令等更多功能。 + +## 开始使用 + +```shell +dotnet tool install --global LINGYUN.Abp.Cli +``` + +## 使用方法 + +```shell +使用方法: + + labp [options] + +命令列表: + + > help: 显示命令行帮助。使用 ` labp help ` 获取详细帮助 + > create: 基于自定义的ABP启动模板生成新的解决方案 + > generate-proxy: 生成客户端服务代理和DTO以消费HTTP API + > generate-view: 从HTTP API代理生成视图代码 + +获取命令的详细帮助: + + labp help +``` + +## 功能特性 + +* 支持生成TypeScript客户端代理代码 + - Axios HTTP客户端 + - Vben Admin集成 + - UniApp集成 +* 支持生成Flutter客户端代理代码 + - Dio HTTP客户端 + - REST服务集成 +* 支持生成视图代码 + - Vben Admin视图模板 + - Flutter GetX视图模板 +* 自定义ABP启动模板 + +## 反馈 + +有问题需要反馈? + +- [Github问题](https://github.com/colinin/abp-next-admin/issues) + +[English](./README.md) diff --git a/aspnet-core/framework/cloud-aliyun/LINGYUN.Abp.Aliyun.Features/README.EN.md b/aspnet-core/framework/cloud-aliyun/LINGYUN.Abp.Aliyun.Features/README.EN.md new file mode 100644 index 000000000..c21ab1c0b --- /dev/null +++ b/aspnet-core/framework/cloud-aliyun/LINGYUN.Abp.Aliyun.Features/README.EN.md @@ -0,0 +1,37 @@ +# LINGYUN.Abp.Aliyun.Features + +Alibaba Cloud service feature management module. + +## Features + +* Provides feature definitions and management for Alibaba Cloud services +* Supports enabling/disabling Alibaba Cloud service features +* Integration with ABP feature management system + +## Module Reference + +```csharp +[DependsOn(typeof(AbpAliyunFeaturesModule))] +public class YouProjectModule : AbpModule +{ + // other +} +``` + +## Feature Items + +* **Features:AlibabaCloud** - Alibaba Cloud service feature group + * **Features:AlibabaCloud:IsEnabled** - Enable/Disable Alibaba Cloud services + * Default value: false + * Description: Enable to give the application Alibaba Cloud service capabilities + +## Configuration Items + +This module is mainly used for feature definition and does not contain configuration items. + +## Notes + +* This module needs to be used in conjunction with the LINGYUN.Abp.Aliyun module +* After enabling Alibaba Cloud service features, you still need to configure the corresponding service parameters in the LINGYUN.Abp.Aliyun module + +[查看中文文档](README.md) diff --git a/aspnet-core/framework/cloud-aliyun/LINGYUN.Abp.Aliyun.Features/README.md b/aspnet-core/framework/cloud-aliyun/LINGYUN.Abp.Aliyun.Features/README.md new file mode 100644 index 000000000..72bd17850 --- /dev/null +++ b/aspnet-core/framework/cloud-aliyun/LINGYUN.Abp.Aliyun.Features/README.md @@ -0,0 +1,37 @@ +# LINGYUN.Abp.Aliyun.Features + +阿里云服务功能管理模块。 + +## 功能特性 + +* 提供阿里云服务的功能定义和管理 +* 支持启用/禁用阿里云服务功能 +* 与ABP功能管理系统集成 + +## 模块引用 + +```csharp +[DependsOn(typeof(AbpAliyunFeaturesModule))] +public class YouProjectModule : AbpModule +{ + // other +} +``` + +## 功能项 + +* **Features:AlibabaCloud** - 阿里云服务功能组 + * **Features:AlibabaCloud:IsEnabled** - 是否启用阿里云服务 + * 默认值:false + * 描述:启用使应用程序拥有阿里云服务的能力 + +## 配置项 + +此模块主要用于功能定义,不包含配置项。 + +## 注意 + +* 此模块需要与LINGYUN.Abp.Aliyun模块配合使用 +* 启用阿里云服务功能后,还需要在LINGYUN.Abp.Aliyun模块中配置相应的服务参数 + +[点击查看英文文档](README.EN.md) diff --git a/aspnet-core/framework/cloud-aliyun/LINGYUN.Abp.Aliyun.SettingManagement/README.EN.md b/aspnet-core/framework/cloud-aliyun/LINGYUN.Abp.Aliyun.SettingManagement/README.EN.md new file mode 100644 index 000000000..0bdc4ab2b --- /dev/null +++ b/aspnet-core/framework/cloud-aliyun/LINGYUN.Abp.Aliyun.SettingManagement/README.EN.md @@ -0,0 +1,23 @@ +# LINGYUN.Abp.Aliyun.SettingManagement + +Alibaba Cloud configuration management module. By referencing this module, you can manage Alibaba Cloud-related configurations and access the API interfaces published through the gateway aggregation. + +API endpoint: api/setting-management/aliyun + +## Module Reference + +The module should be referenced as needed. It is recommended to reference this module in the configuration management hosting service. + +```csharp +[DependsOn(typeof(AbpAliyunSettingManagementModule))] +public class YouProjectModule : AbpModule +{ + // other +} +``` + +## Note + +Since the background management module is responsible for managing all configurations, this module only provides query interfaces. + +[查看中文文档](README.md) diff --git a/aspnet-core/framework/cloud-aliyun/LINGYUN.Abp.Aliyun.SettingManagement/README.md b/aspnet-core/framework/cloud-aliyun/LINGYUN.Abp.Aliyun.SettingManagement/README.md index 66baecce3..48e66cdf5 100644 --- a/aspnet-core/framework/cloud-aliyun/LINGYUN.Abp.Aliyun.SettingManagement/README.md +++ b/aspnet-core/framework/cloud-aliyun/LINGYUN.Abp.Aliyun.SettingManagement/README.md @@ -1,12 +1,20 @@ # LINGYUN.Abp.Aliyun.SettingManagement -阿里云配置管理模块,引用此模块可管理阿里云相关的配置,可通过网关聚合对外公布的API接口 +阿里云配置管理模块,引用此模块可管理阿里云相关的配置,可通过网关聚合对外公布的API接口。 -API接口: api/setting-management/aliyun +## 功能特性 -## 配置使用 +* 提供阿里云服务配置的查询接口 +* 支持通过API接口获取阿里云配置信息 +* 与ABP设置管理系统集成 -模块按需引用,建议在配置管理承载服务引用此模块 +## API接口 + +* **GET api/setting-management/aliyun** - 获取阿里云配置信息 + +## 模块引用 + +模块按需引用,建议在配置管理承载服务引用此模块。 ```csharp [DependsOn(typeof(AbpAliyunSettingManagementModule))] @@ -15,6 +23,11 @@ public class YouProjectModule : AbpModule // other } ``` + ## 注意 -因后台管理模块负责管理所有配置,此模块仅提供查询接口 +* 因后台管理模块负责管理所有配置,此模块仅提供查询接口 +* 需要与LINGYUN.Abp.Aliyun模块配合使用 +* 建议在配置管理承载服务中引用此模块 + +[点击查看英文文档](README.EN.md) diff --git a/aspnet-core/framework/cloud-aliyun/LINGYUN.Abp.Aliyun/README.EN.md b/aspnet-core/framework/cloud-aliyun/LINGYUN.Abp.Aliyun/README.EN.md new file mode 100644 index 000000000..bf93c149d --- /dev/null +++ b/aspnet-core/framework/cloud-aliyun/LINGYUN.Abp.Aliyun/README.EN.md @@ -0,0 +1,86 @@ +# LINGYUN.Abp.Aliyun + +Alibaba Cloud SDK integration module. + +Reference: [Alibaba Cloud API Documentation](https://help.aliyun.com/document_detail/28763.html) + +## Features + +* Provides basic SDK integration for Alibaba Cloud services +* Supports Alibaba Cloud RAM (Resource Access Management) authentication +* Supports STS Token access +* Supports Alibaba Cloud SMS service +* Supports Alibaba Cloud Object Storage Service (OSS) +* Provides distributed cache support for optimizing high concurrency scenarios + +## Module Reference + +```csharp +[DependsOn(typeof(AbpAliyunModule))] +public class YouProjectModule : AbpModule +{ + // other +} +``` + +## Configuration Items + +### Authentication Configuration + +* **AliyunSettingNames.Authorization.RegionId** + * Description: Alibaba Cloud service region + * Type: Optional + * Default value: default + * Example: oss-cn-hangzhou + +* **AliyunSettingNames.Authorization.AccessKeyId** + * Description: AccessKey ID of Alibaba Cloud RAM account + * Type: Required + * How to get: Access Alibaba Cloud Console - Access Control + +* **AliyunSettingNames.Authorization.AccessKeySecret** + * Description: AccessKey Secret of RAM account + * Type: Required + * How to get: Access Alibaba Cloud Console - Access Control + +### STS Token Configuration + +* **AliyunSettingNames.Authorization.UseSecurityTokenService** + * Description: Whether to use STS Token access + * Type: Optional + * Default value: false + * Recommendation: Recommended to enable for improved security + +* **AliyunSettingNames.Authorization.RamRoleArn** + * Description: Alibaba Cloud RAM role ARN + * Type: Required when STS Token is enabled + * Format: acs:ram::$accountID:role/$roleName + +* **AliyunSettingNames.Authorization.RoleSessionName** + * Description: Custom token name + * Type: Optional + * Usage: For access auditing + +* **AliyunSettingNames.Authorization.DurationSeconds** + * Description: Token expiration time + * Type: Optional + * Default value: 3000 + * Unit: Seconds + +* **AliyunSettingNames.Authorization.Policy** + * Description: Permission policy + * Type: Optional + * Format: JSON string + +## Performance Optimization + +* In high concurrency scenarios, it is recommended to enable distributed caching to improve performance +* When using STS Token, the token will be automatically cached until expiration +* It is recommended to set DurationSeconds reasonably to avoid frequent token refreshes + +## Related Modules + +* [LINGYUN.Abp.Aliyun.SettingManagement](../LINGYUN.Abp.Aliyun.SettingManagement/README.md) - Provides configuration management functionality +* [LINGYUN.Abp.Aliyun.Features](../LINGYUN.Abp.Aliyun.Features/README.md) - Provides feature management functionality + +[查看中文文档](README.md) diff --git a/aspnet-core/framework/cloud-aliyun/LINGYUN.Abp.Aliyun/README.md b/aspnet-core/framework/cloud-aliyun/LINGYUN.Abp.Aliyun/README.md index 6cb396563..4edc9f411 100644 --- a/aspnet-core/framework/cloud-aliyun/LINGYUN.Abp.Aliyun/README.md +++ b/aspnet-core/framework/cloud-aliyun/LINGYUN.Abp.Aliyun/README.md @@ -1,12 +1,19 @@ # LINGYUN.Abp.Aliyun -阿里云sdk集成 +阿里云SDK集成模块。 -参照:https://help.aliyun.com/document_detail/28763.html +参照:[阿里云API文档](https://help.aliyun.com/document_detail/28763.html) -## 配置使用 +## 功能特性 -模块按需引用 +* 提供阿里云服务的基础SDK集成 +* 支持阿里云RAM(访问控制)认证 +* 支持STS Token访问 +* 支持阿里云短信服务(SMS) +* 支持阿里云对象存储(OSS) +* 提供分布式缓存支持,优化高并发场景 + +## 模块引用 ```csharp [DependsOn(typeof(AbpAliyunModule))] @@ -15,17 +22,65 @@ public class YouProjectModule : AbpModule // other } ``` + ## 配置项说明 -* AliyunSettingNames.Authorization.RegionId 可选,区域,默认 default -* AliyunSettingNames.Authorization.AccessKeyId 必须,阿里云RAM账号的AccessKey ID -* AliyunSettingNames.Authorization.AccessKeySecret 必须,RAM账号的AccessKey Secret -* AliyunSettingNames.Authorization.UseSecurityTokenService 可选,建议,使用STS Token访问,按照阿里云文档,建议使用Sts Token访问API,默认false -* AliyunSettingNames.Authorization.RamRoleArn 可选,启用Sts Token之后必须配置,阿里云RAM角色ARN -* AliyunSettingNames.Authorization.RoleSessionName 可选,启用Sts Token之后的用户自定义令牌名称,用于访问审计 -* AliyunSettingNames.Authorization.DurationSeconds 可选,用户令牌的过期时间,单位为秒,默认3000 -* AliyunSettingNames.Authorization.Policy 可选,权限策略,为json字符串 +### 认证配置 + +* **AliyunSettingNames.Authorization.RegionId** + * 说明:阿里云服务区域 + * 类型:可选 + * 默认值:default + * 示例:oss-cn-hangzhou + +* **AliyunSettingNames.Authorization.AccessKeyId** + * 说明:阿里云RAM账号的AccessKey ID + * 类型:必须 + * 获取方式:访问阿里云控制台-访问控制 + +* **AliyunSettingNames.Authorization.AccessKeySecret** + * 说明:RAM账号的AccessKey Secret + * 类型:必须 + * 获取方式:访问阿里云控制台-访问控制 + +### STS Token配置 + +* **AliyunSettingNames.Authorization.UseSecurityTokenService** + * 说明:是否使用STS Token访问 + * 类型:可选 + * 默认值:false + * 建议:建议开启,提高安全性 + +* **AliyunSettingNames.Authorization.RamRoleArn** + * 说明:阿里云RAM角色ARN + * 类型:启用STS Token时必须 + * 格式:acs:ram::$accountID:role/$roleName + +* **AliyunSettingNames.Authorization.RoleSessionName** + * 说明:用户自定义令牌名称 + * 类型:可选 + * 用途:用于访问审计 + +* **AliyunSettingNames.Authorization.DurationSeconds** + * 说明:用户令牌的过期时间 + * 类型:可选 + * 默认值:3000 + * 单位:秒 + +* **AliyunSettingNames.Authorization.Policy** + * 说明:权限策略 + * 类型:可选 + * 格式:JSON字符串 + +## 性能优化 + +* 在高并发场景下,建议开启分布式缓存以提高性能 +* 使用STS Token时,Token会自动缓存到过期前 +* 建议合理设置DurationSeconds,避免过于频繁的Token刷新 + +## 相关模块 -## 其他 +* [LINGYUN.Abp.Aliyun.SettingManagement](../LINGYUN.Abp.Aliyun.SettingManagement/README.md) - 提供配置管理功能 +* [LINGYUN.Abp.Aliyun.Features](../LINGYUN.Abp.Aliyun.Features/README.md) - 提供功能管理功能 -网络因素在高并发下可能会出现预期外的异常,考虑使用二级缓存 +[点击查看英文文档](README.EN.md) diff --git a/aspnet-core/framework/common/LINGYUN.Abp.BlobStoring.Aliyun/README.EN.md b/aspnet-core/framework/common/LINGYUN.Abp.BlobStoring.Aliyun/README.EN.md new file mode 100644 index 000000000..745d34c1d --- /dev/null +++ b/aspnet-core/framework/common/LINGYUN.Abp.BlobStoring.Aliyun/README.EN.md @@ -0,0 +1,85 @@ +# LINGYUN.Abp.BlobStoring.Aliyun + +Aliyun OSS implementation of the ABP framework's object storage provider **IBlobProvider**. + +## Features + +* Implements ABP's IBlobProvider interface using Aliyun OSS service +* Supports multi-tenant Blob storage +* Automatic Bucket creation +* Configurable Bucket access control +* STS Token access support +* Customizable Blob naming strategy + +## Module Reference + +First, define the **appsettings.json** file: + +```json +{ + "Aliyun": { + "OSS": { + "BucketName": "your-bucket-name", + "Endpoint": "http://oss-cn-shanghai.aliyuncs.com", + "CreateBucketIfNotExists": true + } + } +} +``` + +Then reference the module in your project: + +```csharp +[DependsOn(typeof(AbpBlobStoringAliyunModule))] +public class YouProjectModule : AbpModule +{ + // other +} +``` + +## Configuration + +### OSS Configuration + +* **BucketName** + * Description: OSS storage space name + * Type: Optional + * Default: Container name + +* **Endpoint** + * Description: OSS service access point + * Type: Required + * Example: http://oss-cn-shanghai.aliyuncs.com + +* **CreateBucketIfNotExists** + * Description: Whether to automatically create the bucket if it doesn't exist + * Type: Optional + * Default: false + +* **CreateBucketReferer** + * Description: Bucket access whitelist + * Type: Optional + +### Blob Naming Rules + +* Container (Bucket) naming rules: + * Length must be between 3-63 characters + * Can only contain lowercase letters, numbers, and hyphens + * Must start with a letter or number + * Cannot start or end with a hyphen + +* Blob naming rules: + * Tenant: `tenants/{tenantId}/{blobName}` + * Host: `host/{blobName}` + +## Performance Optimization + +* Uses distributed caching for STS Token storage +* Supports data redundancy configuration +* Configurable Bucket access control for enhanced security + +## Related Modules + +* [LINGYUN.Abp.Aliyun](../../cloud-aliyun/LINGYUN.Abp.Aliyun/README.md) - Provides Aliyun basic integration + +[点击查看中文文档](README.md) diff --git a/aspnet-core/framework/common/LINGYUN.Abp.BlobStoring.Aliyun/README.md b/aspnet-core/framework/common/LINGYUN.Abp.BlobStoring.Aliyun/README.md index 7973666c7..9d2fb7590 100644 --- a/aspnet-core/framework/common/LINGYUN.Abp.BlobStoring.Aliyun/README.md +++ b/aspnet-core/framework/common/LINGYUN.Abp.BlobStoring.Aliyun/README.md @@ -1,12 +1,19 @@ # LINGYUN.Abp.BlobStoring.Aliyun -abp框架对象存储提供者**IBlobProvider**的阿里云实现 +ABP框架对象存储提供者**IBlobProvider**的阿里云OSS实现。 -## 配置使用 +## 功能特性 -模块按需引用 +* 实现ABP的IBlobProvider接口,使用阿里云OSS服务 +* 支持多租户Blob存储 +* 自动创建Bucket +* 可配置的Bucket访问控制 +* 支持STS Token访问 +* 可自定义的Blob命名策略 -事先定义**appsettings.json**文件 +## 模块引用 + +首先定义**appsettings.json**文件: ```json { @@ -18,13 +25,61 @@ abp框架对象存储提供者**IBlobProvider**的阿里云实现 } } } - ``` +然后在项目中引用模块: + ```csharp [DependsOn(typeof(AbpBlobStoringAliyunModule))] public class YouProjectModule : AbpModule { // other } -``` \ No newline at end of file +``` + +## 配置说明 + +### OSS配置 + +* **BucketName** + * 说明:OSS存储空间名称 + * 类型:可选 + * 默认值:容器名称 + +* **Endpoint** + * 说明:OSS服务的接入点 + * 类型:必须 + * 示例:http://oss-cn-shanghai.aliyuncs.com + +* **CreateBucketIfNotExists** + * 说明:如果Bucket不存在是否自动创建 + * 类型:可选 + * 默认值:false + +* **CreateBucketReferer** + * 说明:Bucket访问白名单 + * 类型:可选 + +### Blob命名规则 + +* 容器(Bucket)名称规则: + * 长度必须在3-63字符之间 + * 只能包含小写字母、数字和短横线 + * 必须以字母或数字开头 + * 不能以短横线开头或结尾 + +* Blob名称规则: + * 租户:`tenants/{tenantId}/{blobName}` + * 宿主:`host/{blobName}` + +## 性能优化 + +* 使用分布式缓存存储STS Token +* 支持数据冗余配置 +* 可配置的Bucket访问控制以提高安全性 + +## 相关模块 + +* [LINGYUN.Abp.Aliyun](../../cloud-aliyun/LINGYUN.Abp.Aliyun/README.md) - 提供阿里云基础集成 + +[Click to view English documentation](README.EN.md) \ No newline at end of file