, 我们接下来要在本地把它算出, 省掉访问节点的时间)
constructor() public {
uint chainId;
assembly {
chainId :...############
# DOMAIN_SEPERATOR
# 此值可以通过 pair.DOMAIN_SEPERATOR().call() 获得, 但是此处采用本地计算
##...但是不能阻止用户在其他合约被钓鱼, 例如黑客可以发布一个合约, 使用相同的 DOMAIN_SEPARATOR, PERMIT_TYPEHASH, 将 nonce 指向 Uniswap 某个交易对的 nonce, spender 设置为黑客控制的地址...因此我们在 dapp 上签名的时候应该注意, 不要随便签署没有公开源码的合约, 避免被钓鱼.
eip-2612 相关参考链接:
"5 Tips & Tricks for DeFi Developers...subgraphUrl) {
throw new Error(`No subgraph url for chain id: ${this.chainId}`);
}
this.client