运行演示
启动 Canton Network QuickStart 演示并走通许可工作流。
运行演示
运行演示
Explore the Canton Network Application Quickstart demo
业务场景
CN Quickstart 是构建、测试与部署 CN 应用的脚手架,解决每个 CN 应用都需处理的基础设施问题,让团队专注业务而非构建系统、部署与测试基础设施。
核心业务操作
Quickstart 以示例许可应用演示 Canton 开发模式:提供方销售基于时间的服务访问,用户用 Canton Coin(CC)并通过 Canton 钱包管理支付。
The app involves four parties:
- 应用提供方销售许可。
- 应用用户购买许可。
- 底层 Amulet 代币系统处理支付,使用 CC。
- DSO Party(去中心化 Synchronizer 运营方)运营 Amulet 支付系统;在 CN 中为 Super Validator。
The application issues licenses using the following process:
签发许可
提供方为已入驻用户创建新许可;许可初始为过期,使用前须续期。
请求许可续期
提供方创建续期请求并为用户生成付款请求;账本上创建匹配的 CC 付款请求。
支付许可续期
用户通过 Canton 钱包批准付款,在账本创建已接受付款合约。
续期许可
提供方处理已接受付款并更新许可过期日。
概览
本节帮助你在 CN App Quickstart 中熟悉一次 CN 业务操作。应用可由团队扩展;熟悉后请审视技术选型与设计。技术与设计决策由你决定。
发现错误请联系 Digital Asset 代表。
前置条件
演示前请先完成 CN App Quickstart 安装。
演练
CN App Quickstart 可按需启用授权;在 quickstart 子目录用 make setup 切换。演示关闭 TEST MODE、使用默认 party hint,并分别展示启用/未启用 OAUTH2 的路径,任选其一即可。Observability 可选。
选择你的路径:
make setup 未启用 OAUTH2:
make setup 启用 OAUTH2:
构建 Quickstart
make build; make start
用无痕浏览器打开:
app-provider.localhost:3000
或在 quickstart/ 终端运行:
make open-app-ui
127.0.0.1 app-provider.localhost
使系统将 app-provider.localhost 解析到本机,保存后重启 Safari。
登录
未启用 OAUTH2
未启用 OAUTH2 时,首页为简单登录框;在 User 字段输入 “app-provider” 以 AppProvider 登录。
已启用 OAUTH2
启用 OAUTH2 时,首页通过 Keycloak OAuth 2.0 门户登录:
请记住 AppProvider 用户名为 app-provider,密码为 abc123(全小写)。
在 Keycloak 以 app-provider 登录。
凭据:用户名 app-provider,密码 abc123
应用安装菜单
登录后选择菜单 AppInstalls。
打开终端创建应用安装请求。
在 /quickstart/ 运行:
make create-app-install-request
该命令代表 Participant 创建应用安装请求。
回到浏览器。
AppInstallRequest
安装请求出现在列表中。
点击 Accept。
AppInstallRequest 已接受。
操作更新为 Cancel 与 Create license。
创建许可
点击 Create License;许可已创建,“# Licenses” 字段更新。
进入 Licenses 菜单选择 Renewals。
打开「License Renewal Request」模态框。
点击 New 打开 Renew License 模态框。
在模态框设置续期天数、费用、准备时间与结算时间;须填写描述。
「Prepare in」提示 app-user 须在此前接受分配;「Settle in」为提供方完成 completeRenewal 的期限,逾期分配失效。
点击 Issue License Renewal Request。
按 Daml 合约,许可创建时为过期;须发出续期付款请求以激活。
付款
付款请打开 Canton 钱包,按需以 app-user 登录。
查找钱包位置:
- 阅读 LocalNet 应用 UI 参考。
- 进入应用提供方「Tenants」菜单。
- 以
app-user登录应用,在 Licenses 菜单点击 Renewals。
若提示,以 app-user 登录 CC 钱包。
若钱包无 CC,输入金额并点击 TAP;余额将自动更新。
钱包有余额后,在 Allocations 菜单于「Allocate before」前接受 Allocation Request。
接受后会出现 Allocations 区,显示 licenseFeePayment 信息。
续期许可
以 AppProvider 回到 Quickstart,在 Licenses 选择 Renewals,点击绿色 Complete Renewal。
出现许可续期成功确认。
退出 AppProvider 并以 AppUser 登录。
未启用 OAUTH2
未启用 OAUTH2 时直接以 app-user 登录。
已启用 OAUTH2
启用 OAUTH2 时用 app-user 用户名与密码登录。
Login as AppUser with “app-user” as the username and the password is “abc123”.
AppInstall 显示为已接受。
许可显示为 active。
恭喜!你已在 Canton 钱包中完成许可创建、付款分配与激活!
Canton Console
在 quickstart/ 运行:
make canton-console
启动后分别运行 participants 与 participants.all。
participants
返回 participant 详细分类。
participants.all
列出所有 participant 引用。
在 LocalNet 可连接任一列出的 participant。连接 app user 验证者:
app-user
若报错请确认使用了反引号。
连接 app provider:
app-provider
连接模拟 Global Synchronizer 的超级验证者:
sv
Canton Console 还提供验证者健康诊断:
health.status
Daml Shell
在 quickstart/ 运行:
make shell
运行下列命令查看数据:
active
显示唯一标识与资产数量:
active quickstart-licensing:Licensing.License:License
列出许可详情。
active quickstart-licensing:Licensing.License:LicenseRenewalRequest
显示许可续期请求详情。
archives quickstart-licensing:Licensing.AppInstall:AppInstallRequest
显示已归档许可。
Canton Coin Scan
在 http://scan.localhost:4000/ 打开 CC Scan。
默认活动视图显示 CC 总余额与验证者奖励。
选择 Network Info 查看 SV 标识。
Validators 菜单显示本地验证者已向 SV 注册。
可观测性仪表板
浏览器打开 http://localhost:3030/dashboards,选择 Quickstart - consolidated logs。
默认视图显示所有服务日志流。
将服务过滤从 All 改为 participant;点击条目查看详情。
SV UI
SV Web UI:http://sv.localhost:4000/,数据直接来自验证者。
以 sv 登录。
UI 显示 SV 信息与活跃 SV 列表。
Validator Onboarding 菜单可创建验证者 onboarding secret。
下一步
你已完成 CN App Quickstart 中的一次业务操作,并初步了解 Canton Console 与 Daml Shell。建议探索代码库并按业务修改;可继续阅读项目结构或模块 4:构建应用。
本文由 CC Privacy Club 根据 Canton Network 官方文档(CC-BY-4.0)整理翻译,仅供学习;实现细节以官方最新版本为准。