如何丝滑体验 merlin 的网络

背景

众所周知,merlin chain 的 RPC 节点遇到流量高峰期的时候总是链接不上,尤其是测试网络,大家做测试网任务的时候更是苦不堪言(不知道 DApp 的项目方是不是也有这样的感觉),那么能否自建一个节点或者有第三方的 RPC替换掉就行了呢?答案是肯定的。

首先在 blockpi 上创建一个自定义的 RPC URL 链接(在后面要用到),具体如何创建,到网站上点点即可。

创建自定义节点
创建自定义节点

创建完后,在 API Key List 中,最右边点击小狐狸,即可自动添加自定义网络到小狐狸钱包中

添加自定义节点到小狐狸钱包
添加自定义节点到小狐狸钱包

以上是如何获取自定义的 RPC 节点以及如何添加到小狐狸钱包的操作,更加详细的请看课代表的推文 如何替换钱包的推文

那么下文注重教大家如何丝滑的体验 merlin chain(前提是能正常出块,不出块的哈科技都不好使,比如这样你是啥也干不了的

不出块了
不出块了

merlin chain 的 RPC 节点信息请参考

Mainnet
Network Name: Merlin Mainnet  
RPC URL: https://rpc.merlinchain.io  
Chain ID: 4200  
Currency symbol: BTC  
Block explorer URL: https://scan.merlinchain.io  
Developer RPC URL: null

Testnet
Network name: Merlin Testnet  
RPC URL: https://testnet-rpc.merlinchain.io
Chain ID: 686868  
Currency symbol: BTC  
Block explorer URL: https://testnet-scan.merlinchain.io

https://docs.merlinchain.io/merlin-docs/resources/network-configuration

操作步骤

拿 bitsmiley 的测试网为例,其它 DAPP 雷同,整不明白的留言附上 DApp 地址

在 Chrome 开发者工具中的 Network 面板里(F12 或者 Shift+Command+i 即可打开),通过查找工具,找出 RPC URL 定义在哪些文件中(只需要关注 js 后缀的文件即可)

**注:**默认 merlin 上 DApp 用的是官方 RPC,但也有些用了自定义的第三方,比如笑脸后面用的也是 blockapi 的,这时候搜索的关键词就要从 testnet-rpc.merlinchain.io 变成 merlin-testnet.blockpi.network 了,后面的替换环节也注意下

找出 RPC URL 定义的地方
找出 RPC URL 定义的地方

找到对应的文件名,右击选择 Override content 选项

Override content
Override content

此时浏览器会跳出一个框让选择一个文件夹来保存这个待重写的文件

post image

选择好文件后,浏览器会弹出提示,点击 Allow 就好(我为了方便就直接放桌面了)

post image

此时会跳转到 Sources 面板中,看到 Overrides 的 TAB 下面是待重写的文件

post image

选中文件继续右击,选择 Open in containing folder,在本地文件夹中打开

post image

此时会弹出待重写的文件所在的文件夹

post image

选择文件后右击,找一个你趁手的文本编辑器,能查找、保存即可(这里我选择的是 VScode

post image

查找(最好是全匹配查找)并替换成你自己的 RPC 地址,然后保存

post image

回到 Chrome 浏览器,将开发者工具切换到 Network 面板下,刷新页面,进行查找,此时发现 index-xxxx.js 文件中的 RPC 节点地址已经被替换成 blockpi 里面自建的地址了(不要用截图里的 RPC 地址,文章写好后已经删除了

post image

然后继续重复上面的操作,替换掉其它文件中的 rpc 链接地址即可,至此,就能很丝滑的体验 merlin chain 上的各种 DApp 的操作了。

注意事项

  • 网站其实会时常去更新的(尤其是测试网络),网站更新的时候其实定义 RPC 节点的文件名字会改变,比如教程中的 index-cX-0eGTc.js ,更新之后可能会变成了 index-i-updated.js ,这时候你之前的覆盖就会失效了(文件名匹配不上)。 这时候可以先在Sources 的面板中勾选掉 Enable Local Overrides 然后刷新页面(最好是强制刷新)重新查找并核对文件名就好了

取消 Enable Local Overrides
取消 Enable Local Overrides

强制刷新方法,找到刷新按钮右击选择 Hard Reload 或者 Empty Cache and Hard Reload 即可

强制刷新
强制刷新