[Astar]コントラクト備忘録45(Polkadot.jsを使ってアドレスの検証をしてみよう!)

2023/03/13に公開

今回は、Polkadot.jsのアドレスの検証を行っていきたいと思います。

https://polkadot.js.org/docs/util-crypto/examples/validate-address

内容はこちらになります。

下にあるように、

「@polkadot/util」の「hexToU8a」, 「isHex」と

「@polkadot/keyring」の「decodeAddress」, 「encodeAddress」をそれぞれ用いています。

chatGPT

このようにtrueとなることも確認ができました。

今回は以上です。

import { useState } from 'react'
import { decodeAddress, encodeAddress } from '@polkadot/keyring'
import { hexToU8a, isHex } from '@polkadot/util'


const address = '5D2MwJP4v1TeauSooBvJ8ueUyxtmrqpq6FpJTXbENwWSzn8M';

const inter = Inter({ subsets: ['latin'] })

export default function Home() {

  const [isValidAddress, setIsValidAddress] = useState(false);
  async function validadeAddress () {
    const isValidAddressPolkadotAddress = () => {
      try {
        encodeAddress(
          isHex(address)
            ? hexToU8a(address)
            : decodeAddress(address)
        );
    
        return true;
      } catch (error) {
        return false;
      }
    };
    setIsValidAddress(isValidAddressPolkadotAddress())
  
  }
<button onClick={validadeAddress}>validade Address</button>
          <p style={{marginBottom: "20px"}}>isValidAddress: {isValidAddress.toString()}</p>

Discussion