手册
Rinkeby 测试网和主网客户端分离 (Rinkeby)
Collection Mint 客户强化到主网,而 Marketplace SPA 锁定 Rinkeby Infura。具有共享 web3/IPFS 实用程序的网络特定配置...
类似 OpenSea 的市场 UI
部分 3 的 3
Bare Crypto 市场 SPA:类似 OpenSea 的信息架构(主页、市场、查看器、个人资料、铸币形式)、通过扫描 TotalSupply 列出发现、与 Rinkeby Infura 和主网铸币客户共享的实用程序分离 — ADR、速率限制和 30 秒的民意调查陈旧列表失败。
相同的 util 文件夹,不同的链事实
在 Bare Crypto 系列中,市场 UI 连接到 Rinkeby 读/写节点; CBD 全明星/自信的大猩猩薄荷表面滑入主网 Infura 和钱包活页夹。代码外观相似 — web3Utils、IPFS 帮助程序、元数据形状 — 但网络 ID、合约地址和风险模型是分开的。客户拆分是回购政策和 ADR 问题。```text
Shared utils (shape)
web3 helpers · IPFS upload/retrieve · metadata attrs
╱ ╲
Marketplace SPA Collection mint clients
network: Rinkeby network: Ethereum mainnet
listings + viewer whitelist / mint / reveal
Infura test endpoint Infura main + Web3Modal
╲ ╱
NEVER share one hardcoded project key across envs
## 第一次提到的概念```text
📦 İstemci Split
Aynı ürün ailesinde testnet marketplace ile mainnet mint uygulamalarının bilinçli ayrılması.
📦 Paylaşılan Util
Ağdan bağımsız yardımcılar (ABI çağrı kalıpları, IPFS, metadata); ağ gerçeği config'te kalır.
📦 Rinkeby
Marketplace prototipinin bağlandığı Ethereum test ağı (dönemin seçimi; sonradan emekli).
📦 Mainnet Sertleştirme
Gerçek değer, cüzdan bağlayıcıları ve yanlış ağ uyarılarıyla production mint yüzeyi.
```实用复制不是共享;应该写出哪个不变量是常见的,哪个是特定于 env 的。
## 两个客户,两种风险
市场:列表扫描、陈旧民意调查、测试 ETH。铸币客户端:付费铸币、白名单、揭示。共享相同的 Infura 项目和相同的捆绑密钥将测试配额与生产结合起来,并增加了密钥泄漏。
## 什么可以分享,什么不可以分享
可共享:元数据属性形状、IPFS pin/retrieve 包装器、“contract.methods.X.call”模式。未共享:RPC URL/项目 ID、合约地址、默认链 ID、投票范围、钱包连接器集。```text
ADR: Client split
Decision: separate marketplace (Rinkeby) from mint (mainnet) apps
Share: pure utils + metadata conventions
Do not share: network endpoints, addresses, secrets
Consequence: duplicate apps, clearer blast radius
```## 配置规则
在当时的代码中,Infura 边缘被隐藏在源文件中——案例研究将其标记为反模式,而不是重印该值。正确的方向:构建时环境、每个网络应用程序或网络选择器,而不是文档中的真实项目 ID。
## OpenSea 参考到此结束
OpenSea 在一种产品中运行多个链/操作。 Bare Crypto 通过在学习路径上将测试网市场与主网铸币分开来减少爆炸半径。这并不是不成熟,而是不成熟。有意识的客户限制。
## 本期最令人困惑的对决```text
❌ Marketplace Rinkeby'de çalışıyorsa mint de aynı endpoint'i kullanabilir
✓ Risk ve kota modelleri farklıdır
❌ Util dosyalarını kopyalamak = tek kaynak gerçeği
✓ Invariant'ları paketleyin; sırları değil
❌ Testnet adresi mainnet ABI ile 'yakın yeter'
✓ Yanlış zincir + yanlış adres = kullanıcı kaybı
❌ Dokümana Infura proje id yazmak öğreticidir
✓ Sızıntıdır; placeholder kullanın
您自己的系统清单
- 哪些文件在 Marketplace 和 Mint 客户端中真正具有共同不变性?
- RPC端点在多少地方被硬编码?
- 连接到错误网络的钱包上 UI 会做什么?
- 如果利率限制进入市场(同一项目),Mint会受到影响吗?
- 您能将拆分内容写在一个 ADR 段落中吗?
本节中需要记住的事情
- Rinkeby市场和主网铸币客户端故意分开。
- util的共享形式很常见;网络秘密和地址则不然。
- OpenSea IA 参考不需要单个生产堆栈。
相同的 web3 助手并不意味着相同的链。
FAQ
Frequently asked questions
什么是客户拆分?
在同一产品系列中,有意识地将测试网市场和主网铸币应用程序分开。
什么是共享实用程序?
独立于网络的助手(ABI 调用模式、IPFS、元数据);网络真相保留在配置中。
“如果 Marketplace 在 Rinkeby 上运行,mint 也可以使用相同的端点”,这是真的吗?
风险和配额模型不同
本节修复了什么?
本节解释了为什么“只是配置”才能将类似 OpenSea 的测试网市场与主网铸币客户端分开。在 Bare Crypto 系列中,市场 UI 连接到 Rinkeby 读/写节点; CBD 全明星/自信的大猩猩薄荷表面滑入主网 Infura 和钱包活页夹。代码外观相似 — `web3Utils`、IPFS 帮助程序、元数据形状 — 但网络 ID、合约地址和风险模型是分开的。客户拆分是回购政策和 ADR 问题。
学到的工程原理
- 客户拆分是风险限额;这不仅仅是文件夹布局。
- 实用程序共享是不变共享,而不是端点共享。
- 秘密和项目身份不包含在案例研究中。
继续阅读
继续阅读
系列中的下一个
通过扫描totalSupply发现列表
getListings 读取 NFT TotalSupply 并对每个 tokenId 进行多次 RPC 调用。 N×call 不可扩展;产生 30 秒的民意调查陈旧列表和 Infura 速率限制。
同系列
类似 OpenSea 的信息架构
Bare Crypto 市场 SPA 建立了一个信息架构,该架构清楚地将 OpenSea 复制为产品参考:主页、市场、查看器、个人资料和铸币表单。
相关文章
钱包品牌落地 vs 实际拓展范围
Bare Wallet 应用程序实际上是一个营销 SPA/下载渠道 - 它不是 Chrome MV3 扩展程序。 CRA PWA 清单不应被误认为是扩展架构。