部署及測試一般權杖架構的包裝程式 API

部署有趣的權杖架構包裝程式 API 套件

如需有關使用每個套裝軟體隨附之 Postman 集合的資訊,請參閱 Wrapper API Package Components

您必須先更新必要的組態變數,才能部署包裝函式 API 套件。部分組態變數具有預設值,但您必須手動更新任何包含預留位置的變數作為其預設值。組態變數儲存在包裝函式 API 存檔的 terraform.tfvars 檔案中。如需有關部署包裝函式 API 與組態變數的詳細資訊,請參閱包裝函式 API 。下表列出組態變數及其非適用變數替代字架構包裝程式 API 套件的預設值。如果預設值包含預留位置,則表示使用者必須手動提供必要的值。

變數名稱 預設值 描述
compartment_ocid <compartment_ocid> Oracle Cloud Infrastructure (OCI) 中區間的 OCID。
compartment_name <compartment_name> OCI 區間的名稱。
identity_domain <identity_domain> 要使用的識別網域。
blockchain_channel <blockchain_channel> 部署鏈碼之 Oracle Blockchain Platform 通道的名稱。
blockchain_url <blockchain_url> 與鏈碼部署關聯的 Oracle Blockchain Platform URL。
blockchain_chaincode DepositToken 要產生包裝函式 API 的鏈碼名稱。
blockchain_sync true 要包含在 API 呼叫之有效負載中的同步值。
blockchain_timeout 6000 要包含在 API 呼叫之有效負載中的逾時值。
vcn_display_name DepositToken OCI 虛擬雲端網路的顯示名稱。
application_display_name DepositToken OCI 應用程式的顯示名稱。
gateway_display_name DepositToken API 閘道的顯示名稱。
deployment_display_name DepositToken API 閘道中部署的顯示名稱。
deployment_path_prefix /DepositToken API 閘道中的部署路徑前置碼,指定部署路由的路徑。deployment_path_prefix 變數的開頭必須是斜線 (/)。
ocir_repo_name deposittoken OCI 登錄儲存區域名稱。ocir_repo_name 變數必須全部為小寫字母。
policy_name DepositToken 可透過組織內群組和區間的定義權限,對 API 進行控制管理和存取的原則名稱

有趣的變數替代字架構範例處理流程

使用有趣記號架構包裝程式 API 的典型處理流程會遵循這些基本步驟。
  1. 管理員可使用 initializeDepositToken API 來初始化存款權杖系統。
  2. 管理員使用 createAccountassociateTokenToAccount API 來建立帳戶,並將記號與所有使用者的帳戶建立關聯。
  3. 管理員使用 addRole API 將 minter 角色指派給建立者,並將公證人角色指派給核准者。
  4. 權杖建立者使用 requestMint API 提交要求以提示保證金權杖。
  5. 核准者使用 approveMint API 來複查並核准提示保證金權杖的要求。保證金記號會記入建立者的帳戶。
  6. 發行者使用 getAccountBalance API 驗證銷退折讓金額是否正確。
  7. 建立者使用 holdTokens API 要求將權杖傳輸給發照者。
  8. 核准者使用 executeHoldTokens API 來驗證和核准移轉要求。存款權杖會轉移至核發者的帳戶。
  9. 發照者使用 transferTokens API 給使用者。保證金記號會記入第一個使用者帳戶。
  10. 第一位使用者使用 getAccountBalance API 驗證其帳戶餘額。
  11. 發照者使用 transferTokens API 給使用者。保證金記號會記入第二個使用者帳戶。
  12. 第二位使用者使用 getAccountBalance API 驗證其帳戶餘額。
  13. 第二個使用者使用 burnTokens API 來兌換其保證金權杖。

部署不可變的權杖包裝程式 API 套件

您必須先更新必要的組態變數,才能部署包裝函式 API 套件。部分組態變數具有預設值,但您必須手動更新任何包含預留位置的變數作為其預設值。組態變數儲存在包裝函式 API 存檔的 terraform.tfvars 檔案中。如需有關部署包裝函式 API 與組態變數的詳細資訊,請參閱包裝函式 API 。下表列出組態變數及其非適用變數替代字架構包裝程式 API 套件的預設值。如果預設值包含預留位置,則表示使用者必須手動提供必要的值。

變數名稱 預設值 描述
compartment_ocid <compartment_ocid> Oracle Cloud Infrastructure (OCI) 中區間的 OCID。
compartment_name <compartment_name> OCI 區間的名稱。
identity_domain <identity_domain> 要使用的識別網域。
blockchain_channel <blockchain_channel> 部署鏈碼之 Oracle Blockchain Platform 通道的名稱。
blockchain_url <blockchain_url> 與鏈碼部署關聯的 Oracle Blockchain Platform URL。
blockchain_chaincode NFTCollectiblesWithERC721 要產生包裝函式 API 的鏈碼名稱。
blockchain_sync true 要包含在 API 呼叫之有效負載中的同步值。
blockchain_timeout 6000 要包含在 API 呼叫之有效負載中的逾時值。
vcn_display_name NFTCollectiblesWithERC721 OCI 虛擬雲端網路的顯示名稱。
application_display_name NFTCollectiblesWithERC721 OCI 應用程式的顯示名稱。
gateway_display_name NFTCollectiblesWithERC721 API 閘道的顯示名稱。
deployment_display_name NFTCollectiblesWithERC721 API 閘道中部署的顯示名稱。
deployment_path_prefix /NFTCollectiblesWithERC721 API 閘道中的部署路徑前置碼,指定部署路由的路徑。deployment_path_prefix 變數的開頭必須是斜線 (/)。
ocir_repo_name nftcollectibleswitherc721 OCI 登錄儲存區域名稱。ocir_repo_name 變數必須全部為小寫字母。
policy_name NFTCollectiblesWithERC721 可透過組織內群組和區間的定義權限,對 API 進行控制管理和存取的原則名稱

不適用的記號架構範例處理流程

使用非可行權杖架構包裝函式 API 的典型處理流程會遵循這些基本步驟。
  1. 管理員可使用 createAccount API 為所有利益關係人建立帳戶,包括博物館 / 策展人、買家和賣家。
  2. 管理員可以使用 addRole API 將 minter 角色指派給策展人,讓他們可以 mint NFT。
  3. 策展人使用 createArtCollectionToken API 來鑄造藝術收藏 NFT。
  4. 策展人使用 post API 來設定 NFT 的價格,並在市集內張貼以供銷售。
  5. 買家透過付款網關使用 buy API 以直接付款方式購買 NFT。採購的 NFT 會移轉至買方帳戶,且不再可供銷售。
  6. 買家可選擇性地使用 post API 設定 NFT 的新價格,並將其公佈在市場上供轉售。

部署組合記號包裝程式 API 套件

您必須先更新必要的組態變數,才能部署包裝函式 API 套件。部分組態變數具有預設值,但您必須手動更新任何包含預留位置的變數作為其預設值。組態變數儲存在包裝函式 API 存檔的 terraform.tfvars 檔案中。如需有關部署包裝函式 API 與組態變數的詳細資訊,請參閱包裝函式 API 。下表列出組合記號架構包裝程式 API 套件的組態變數與其預設值。如果預設值包含預留位置,則表示使用者必須手動提供必要的值。

變數名稱 預設值 描述
compartment_ocid <compartment_ocid> Oracle Cloud Infrastructure (OCI) 中區間的 OCID。
compartment_name <compartment_name> OCI 區間的名稱。
identity_domain <identity_domain> 要使用的識別網域。
blockchain_channel <blockchain_channel> 部署鏈碼之 Oracle Blockchain Platform 通道的名稱。
blockchain_url <blockchain_url> 與鏈碼部署關聯的 Oracle Blockchain Platform URL。
blockchain_chaincode WholesaleCBDC 要產生包裝函式 API 的鏈碼名稱。
blockchain_sync true 要包含在 API 呼叫之有效負載中的同步值。
blockchain_timeout 6000 要包含在 API 呼叫之有效負載中的逾時值。
vcn_display_name NFTCollectiblesWithERC1155 OCI 虛擬雲端網路的顯示名稱。
application_display_name NFTCollectiblesWithERC1155 OCI 應用程式的顯示名稱。
gateway_display_name NFTCollectiblesWithERC1155 API 閘道的顯示名稱。
deployment_display_name NFTCollectiblesWithERC1155 API 閘道中部署的顯示名稱。
deployment_path_prefix /NFTCollectiblesWithERC1155 API 閘道中的部署路徑前置碼,指定部署路由的路徑。deployment_path_prefix 變數的開頭必須是斜線 (/)。
ocir_repo_name nftcollectibleswitherc1155 OCI 登錄儲存區域名稱。ocir_repo_name 變數必須全部為小寫字母。
policy_name NFTCollectiblesWithERC1155 可透過組織內群組和區間的定義權限,對 API 進行控制管理和存取的原則名稱

組合記號架構範例處理流程

使用組合記號架構包裝程式 API 的典型處理流程會遵循這些基本步驟。
  1. 管理員可使用 createAccount API 為所有利益關係人 (包括博物館 / 策展人、買家和賣家) 建立有趣且不可行的權杖帳戶。
  2. 管理員可以使用 addRole API 將 minter 角色指派給策展人,讓他們可以 mint NFT。
  3. 策展人使用 mintBatch API 來提示藝術收藏 NFT。
  4. 策展人使用 post API 來設定 NFT 的價格,並在市集內張貼以供銷售。
  5. 買家和賣家使用 createTokenAccount API 建立平台上有趣且不可行權杖的消費者帳戶。
  6. 買家使用 buyWithEthCoin API 以 Ethereum 購買 NFT。採購的 NFT 會移轉至買方帳戶,且不再可供銷售。
  7. 買家可選擇性地使用 post API 設定 NFT 的新價格,並將其公佈在市場上供轉售。
  8. 或者,買方可以使用 burnBatch API 來兌換 NFT,或將其從循環中永久移除。